用x轴上的范围绘制条形图-Python
问题描述:
假设我有如下的数据,我想绘制一个条形图,该条形图将显示每个范围的值作为x轴上的单独条形,而算在yaxis中。用x轴上的范围绘制条形图-Python
range count
0 0-2 172
1 02-05 82
2 05-10 117
3 10-15 164
4 15-20 141
5 20 and above 380
我尝试以下,
plt.bar(a['range'], a['count'], color='blue')
但我收到以下错误,
ValueError: invalid literal for float(): 0-2
我试图将其转换为字符串。结果仍然是一样的。任何人都可以帮我策划这个吗?
感谢
答
如果你看一下plt.bar
的文件,你需要指定作为第一个参数,你想要的吧,没有标签的左边缘。要指定xtick标签,您需要使用plt.xticks
功能。类似这样的:
plt.bar(range(len(a['count'])), a['count'], color='blue')
plt.xticks(range(len(a['count'])), a['range'])