【问题标题】:Manipulating x axis tick labels in matplotlib在 matplotlib 中操作 x 轴刻度标签
【发布时间】:2013-03-24 13:32:07
【问题描述】:

我注意到,当我的条形图中有 5 个或更少的数据条时,x 轴会自动添加额外的刻度: 我想要的是这样的:

有什么方法可以强制 matplotlib 为第一张图的每个条生成一个刻度标签?

【问题讨论】:

  • 您似乎也发现了 OSX issue 1737stackoverflow.com/questions/15524662/… 上 matplotlib 中的 unicode 错误
  • 如果您向我们展示您用来生成这两个图表的代码,这也非常很有帮助。我们可以猜测您是如何做到的,以及出了什么问题,但是如果我们能够了解您在做什么然后解决问题,您将获得更多、更快和更好的答案直接。

标签: python matplotlib pandas bar-chart


【解决方案1】:

bar 方法接受一个参数align。将此参数设置为align='center'align 将条形对齐我们给它的 x 值的中心,而不是对齐条形的左侧(这是默认设置)。

然后使用xticks 方法指定x 轴上的刻度数以及放置位置。

import matplotlib.pyplot as plot

x = range(1, 7)
y = (0, 300, 300, 290, 320, 315)
plot.bar(x, y, width=0.7, align="center")

ind = range(2, 7)    # the x locations for the groups
plot.xticks(ind, x)

plot.axhline(305, linewidth=3, color='r')

plot.show()

文档位于http://matplotlib.org/api/pyplot_api.html

【讨论】:

    猜你喜欢
    • 2012-03-14
    • 2020-03-29
    • 2019-12-18
    • 2011-09-18
    • 2012-12-19
    • 2021-01-31
    • 2021-04-03
    • 2019-03-02
    相关资源
    最近更新 更多