如何设置图例以垂直打印Y值

时间:2017-04-30 00:20:38

标签: python matplotlib plot legend

我正在使用图例来显示Y的值,因为某些值可能长达1000000,并且当它们在图表上重新绘制时会发生碰撞。如何垂直绘制值而不是水平绘制值?请原谅我的Photoshop。

ax.bar(x,y,align='center', width=0.2, color = 'm', label = y)
for key, frequency1_value in frequency1.most_common(response1):
    ax.legend(loc='center left',bbox_to_anchor=(1.1, 1.05))

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:2)

我认为您必须创建一个包含数字的字符串。这是一个最小的工作示例(您必须将x标签更改为IP地址)。

import matplotlib.pyplot as plt
numbers = [3539, 1408, 1320, 1284, 1243, 1164, 1001, 582, 582, 562]
x = range(len(numbers))
text = ''
for i in range(len(numbers)-1):
    text += '{}\n'.format(numbers[i])
text += '{}'.format(numbers[-1])
plt.bar(x, numbers, label=text, color='m')
plt.legend(loc='upper right')
plt.show()

这将产生类似于您想要的输出。 Plot