Python/Python For Analytics
[Python] matplotlib - 그래프에 값 표시 하기
Pydole
2020. 8. 2. 15:45
그래프에 값을 표시 하기 위해서는 matplotlib.pyplot.text 를 사용하면 되며,
x축과 y축의 좌표에 값을 텍스트로 표시하는 것이다.
x = [1,2,3,4,5]
y = [100,200,300,400,500]
import matplotlib.pyplot as plt
plt.bar(x,y)
for i, v in enumerate(x):
plt.text(v, y[i], y[i], # 좌표 (x축 = v, y축 = y[0]..y[1], 표시 = y[0]..y[1])
fontsize = 9,
color='blue',
horizontalalignment='center', # horizontalalignment (left, center, right)
verticalalignment='bottom') # verticalalignment (top, center, bottom)
plt.show()
만약 최저값만 표시를 하려고 한다면, 아래와 같이 y : x 딕셔너리를 만든 후 최저 키(y)을 찾은 후 표시하면 될 것이다.
x = [1,2,3,4,5]
y = [100,200,300,400,500]
import matplotlib.pyplot as plt
dic = { y:x for x, y in zip(x, y) }
plt.bar(x,y)
plt.text(dic[min(y)],min(y),
str(min(y)) + ' Min Point',
color='r',
horizontalalignment='center',
verticalalignment='bottom')
plt.show()
import matplotlib.pyplot as plt
local = ['Seoul','Jeju','Pusan','Daegu', 'Daejeon', 'Bucheon']
value = [40,35,38,36,39,36]
dic = { y:x for x, y in zip(name1, value) }
plt.title('pydole')
plt.plot(local, value)
plt.text(dic[min(dic)],min(dic),
'Min Point',
color='r',
horizontalalignment='center',
verticalalignment='top')
plt.show()