在条形图中使用负值

4 投票
2 回答
18060 浏览
提问于 2025-04-17 16:09

从这个例子开始,我想做一些非常相似的事情,但希望在代码中能够使用负值,比如:

menMeans   = (-20, 35, -30, 35, -27)
womenMeans = (25, -32, 34, -20, 25)

虽然这和男性/女性的意思没有关系。但是当我这样做时,我在图表中看不到任何与负值相关的内容。我还改变了Y轴的刻度;

plt.yticks(np.arange(-81,81,10))

但还是没有效果。有什么建议吗?

2 个回答

0

在这个画廊的例子中,你会看到这一行代码:

plt.bar(ind, womenMeans, width, color='y',bottom=menMeans, yerr=menStd)

这里的底部值可以选择为负数,这样条形图就可以从某个负数的位置开始,长度为 womenMeans

比如,一个黄色的条形图从 -200 到 20,位置在 x=5,宽度为 10,

可以表示为:

plt.bar(5, 220,10, color='y',bottom=-200)
2

我通过以下命令来改变 y 轴的刻度:

plt.ylim([-81,81])

这条命令会把 y 轴的刻度设置为从 -81 到 81。

对于 x 轴的刻度,则是:

plt.xlim([ xmin,xmax])

撰写回答