我有下面的data.frame
values years
0 24578.0 2007-09
1 37491.0 2008-09
2 42905.0 2009-09
3 65225.0 2010-09
4 108249.0 2011-09
5 156508.0 2012-09
6 170910.0 2013-09
7 182795.0 2014-09
8 233715.0 2015-09
9 215639.0 2016-09
10 215639.0 TTM
附加了绘制的图像,问题是我希望多年的值'2007-09'到'TTM'作为情节中的xtick
值
答案 0 :(得分:2)
执行此操作的一种方法是访问x数据中xticks的当前idices。使用该值从df.year
中选择值,然后将标签设置为这些值:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
df.plot(ax=ax)
tick_idx = plt.xticks()[0]
year_labels = df.years[tick_idx].values
ax.xaxis.set_ticklabels(year_labels)
您还可以设置x轴以显示所有年份:
fig, ax = plt.subplots()
df.plot(ax=ax, xticks=df.index, rot=45)
ax.set_xticklabels(df.years)