본문 바로가기
Matplotlib/막대그래프

[파이썬 matplotlib] back-to-back 막대그래프

by 만다린망고 2020. 11. 16.
반응형

[파이썬 matplotlib] 

back-to-back 막대그래프 


back-to-back 막대그래프를 그리는 방법은 plt.bar 그래프를 2개 그릴 때, 두번째 그래프의 data 값의 부호를 음수로 입력해주는 것입니다. 


back-to-back 그래프는 보통 수평형으로 만들어줍니다. 수평형을 만들때는 barh 메소드를 사용합니다. 


import matplotlib.pyplot as plt


X=[1,3,5,7]

data1 = [1,2,3,4]

data2 = [-2,-3,-4,-5]

plt.barh(X, data1,color='r')

plt.barh(X, data2,color='b')


plt.show()



넘파이 array를 사용하면 더 편하게 입력이 가능합니다. 처음부터 음수인 데이터가 아니기 때문에 리스트에서 각 값을 음수로 바꿔주는 것은 번거롭습니다. array는 -1을 곱하면 음수로 바뀌므로 더 편합니다. 


import numpy as np

import matplotlib.pyplot as plt


X=[1,3,5,7]

data1 = np.array([1,2,3,4])

data2 = np.array([2,3,4,5])

plt.barh(X, data1,color='r')

plt.barh(X, -data2,color='b')


plt.show()


반응형

댓글