我想在每半小时的几天内绘制天气数据,但我只想将开头的天数标记为格式为'mm / dd / yy'的字符串。我想留下没有标记的其他部分。
我还想控制沿x轴放置这些标记的位置,并控制轴的范围。
我还想在同一幅图上绘制不同间隔的多组测量值。因此,能够设置轴并绘制给定日期的测量结果将是最好的。
有关如何使用matplotlib进行此操作的任何建议吗?
答案 0 :(得分:2)
您可以在DayLocator
plt.gca().xaxis.set_major_locator(dt.DayLocator())
DateFormatter
和plt.gca().xaxis.set_major_formatter(dt.DateFormatter("%d/%m/%Y"))
注意:import matplotlib.dates as dt
答案 1 :(得分:1)
Matplotlib xticks是你的朋友。将允许您设置刻度线的显示位置。
至于日期格式,请确保您使用的是dateutil对象,并且您将能够处理格式化。
答案 2 :(得分:1)
这在某种程度上取决于您是否使用过程(类似MATLAB)或面向对象的接口。在任何一种情况下,您都希望将1
,2.5
和4
标记为a
,b
和c
。使用procdeual界面,您可以调用:
plt.xticks([1, 2.5, 4], ["a", "b", "c"])
在后一种情况下,你会这样做:
ax = plt.gca()
ax.set_xticks([1, 2.5, 4])
ax.set_xticklabels(["a", "b", "c"])
或者,一步到位:
ax = plt.gca()
ax.set(xticks=[1, 2.5, 4], xticklabels=["a", "b", "c"])