先说数据集

现在想plot id VS market_cap_perc
TOP_CAP_TITLE = 'Top 10 market capitalization'
TOP_CAP_YLABEL = '% of total cap'
ax = plt.subplot()
ax.bar('id', 'market_cap_perc', data=cap10)
ax.set_xticklabels(cap10['id'], rotation=90)
ax.set_ylabel(TOP_CAP_YLABEL)
ax.set_title(TOP_CAP_TITLE)
for a, b in zip(cap10['id'], cap10['market_cap_perc']):
ax.text(a, b, '%.0f' % b, ha='center', va= 'bottom',fontsize=12)
plt.show()
得到如下图,但是❓❓❓为什么x轴没有对应y轴的数据呢?柱状图并没有出现排序,但是我的table里头是排序的啊?求解答~不胜感激!!

其实bar plot是按照x轴的信息来排序的,即使y轴的数值是从大到小的,但是x轴如果不是的话,y轴就会被改变,所以思路就是先把x轴的排序确定好。

比如说:
但是会报错,所以要转化一下字符串

这样就可以成功画出来了。xticks(…)只是改变一下x轴的表述方式而已。

—感谢与V5参与的讨论👍。
学到新技能,更新一下




本文介绍了一个在绘制柱状图时遇到的问题及解决方法。作者尝试绘制id与市场资本占比的关系图,但发现x轴并未按预期排序。通过调整,明确了barplot绘制时x轴的排序至关重要。即便y轴数据已排序,若x轴未排序,则图表展示效果不佳。文章提供了具体的代码示例。
431

被折叠的 条评论
为什么被折叠?



