在刻度之间放置标签

发布于 2024-08-08 19:19:53 字数 398 浏览 2 评论 0原文

在 matplotlib 中,如何在刻度之间放置刻度标签(不低于刻度),

例如:在绘制一段时间内的股票价格时,我希望 x 轴次要刻度显示月份和年份,以显示连续 x 轴主要刻度之间的月份和年份(不只是在主要刻度下方)

---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
  jan feb mar apr may jun jul aug sep oct nov dec jan feb mar apr may jun jul aug sep
                       2008                                            2009

in matplotlib, how do i place ticks labels between ticks (not below ticks)

for example: when plotting a the stock price over time i would like the x axis minor ticks to display months and the years to show up between consecutive x axis major ticks (not just below the major ticks)

---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
  jan feb mar apr may jun jul aug sep oct nov dec jan feb mar apr may jun jul aug sep
                       2008                                            2009

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

冰雪之触 2024-08-15 19:19:53

这能起到作用吗?

enter code here
x = 'j f m a m j j a s o n d j f m a m j j a s o n d'.split()
y = abs(randn(24))
x[6] = 'j\n2008' # replace "j" (January) with ('j' and the appropriate year
x[18] = 'j\n2009'
bar(xrange(len(x)), y, width=0.1)
bar(xrange(len(x)), y, width=0.1)
xticks(xrange(len(x)), x, ha='center')

条形图正确的标签

Will this do the trick?

enter code here
x = 'j f m a m j j a s o n d j f m a m j j a s o n d'.split()
y = abs(randn(24))
x[6] = 'j\n2008' # replace "j" (January) with ('j' and the appropriate year
x[18] = 'j\n2009'
bar(xrange(len(x)), y, width=0.1)
bar(xrange(len(x)), y, width=0.1)
xticks(xrange(len(x)), x, ha='center')

Barchart with proper labels

萧瑟寒风 2024-08-15 19:19:53

你的意思是这样的吗:
- http://matplotlib.sourceforge.net/examples/pylab_examples/barchart_demo.html ??

您必须使用 xticks 和 ha (或“horizo​​ntalalignment”)参数:

>>> x = 'j f m a m j j a s o n d'.split()
>>> y = abs(randn(12))
>>> bar(xrange(len(x)), y, width=0.1)

>>> xticks(xrange(len(x)), x, ha='center')

查看 help(xticks) 和 help(matplotlib.text.Text) 了解更多选项

编辑:抱歉,我没有看到您也在询问如何放置下面的年份标签打勾。我认为您必须手动执行此操作,请查看我链接的示例以了解如何执行此操作。

Do you mean something like this:
- http://matplotlib.sourceforge.net/examples/pylab_examples/barchart_demo.html ??

You must use xticks and the ha (or 'horizontalalignment') parameter:

>>> x = 'j f m a m j j a s o n d'.split()
>>> y = abs(randn(12))
>>> bar(xrange(len(x)), y, width=0.1)

>>> xticks(xrange(len(x)), x, ha='center')

look at help(xticks) and help(matplotlib.text.Text) for more options

edit: sorry, I didn't see you are also asking for how to put the years labels below ticks. I think you must do it manually, have a look at the example I have linked to see how to do it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文