python如何在特定位置设置xaxis上的记号

2024-10-01 19:32:21 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的x轴上有天(例如0-5000天)。现在我想用365天除以它来划分年份,从0-365可以说是2016,366-2*365:2017等等

最好的办法是什么?在

有没有类似ax.tickValues(xrange(0,5000,365))的东西?在


Tags: ax年份办法xrangetickvalues
1条回答
网友
1楼 · 发布于 2024-10-01 19:32:21

下面是一个如何做到的例子。想法如下:首先从2016开始生成要显示的刻度标签(年份)。这里int(np.ceil(5000/365))只是给你在轴上显示的年数。接下来,生成放置这些记号的位置。目前我使用0-365,365-730等的中心作为滴答的位置,因为你想要0-365标记为2016等等。在

您可以根据您的问题调整以下解决方案。在

from matplotlib.ticker import AutoMinorLocator

fig, axes = plt.subplots(figsize=(10, 6))

x = range(3000)
plt.plot(x,x)

tcks = [2016+i for i in range(int(np.ceil(3000/365)))]
locs = [365*i for i in range(int(np.ceil(3000/365)))]
plt.xticks(locs, tcks)
axes.xaxis.set_minor_locator(AutoMinorLocator(12))

enter image description here

相关问题 更多 >

    热门问题