bar()
: 수직 (vertical), x축에 범주, y축에 값을 표기한다.barh()
: 수평 (horizontal), y축에 범주, x축에 값을 표기한다. 범주가 많을 때 적합한 방법이다.color
: bar의 색상을 지정할 수 있다.alpha
: bar의 투명도를 지정할 수 있다. 0 ~ 1bar()
에서는 bottom
파라미터를 사용한다.ax.bar(group['male'].index, group['male'], color='royalblue')
ax.bar(group['female'].index, group['female'], bottom=group['male'], color='tomato')
barh()
에서는 left
파라미터를 사용한다.ax.barh(group['male'].index, group['male']/total, color='royalblue')
ax.barh(group['female'].index, group['female']/total,
left=group['male']/total, color='tomato') # total은 group['male'] + group['female']
Stacked Bar Chart | Percentage Stacked Bar Chart |
---|---|
![]() | ![]() |
2개 그룹만 비교하면 겹쳐서 만드는 것도 하나의 선택지이다. 3개이상은 구분이 어렵다.
같은 축을 사용하여 비교가 더 용이하다.
같은 ax(데이터가 그려지는 캔버스)에 bar plot을 그리고 alpha(투명도)를 조정하여 겹치는 부분을 파악한다.
Overlapped Bar Plot그룹별 범주에 따른 bar를 이웃되게 배치하여 표현하는 방법이다.
matplotlib으로는 구현이 까다롭다. -> seaborn을 사용하면 쉽게 그릴 수 있다.
3가지 기술을 사용하여 구현 가능하다.
width
조정xticks
, xticklabels
조정그룹 개수에 따른 좌표
순서
xticks
의 길이를 조정하고, xticklabels
를 조정한다.