gpt4 book ai didi

python - 如何使用所有 xticks 绘制 pandas 多索引数据帧

转载 作者:太空狗 更新时间:2023-10-29 20:45:52 25 4
gpt4 key购买 nike

我有一个像这样的 Pandas 数据框:

                     content
date
2013-12-18 12:30:00 1
2013-12-19 10:50:00 1
2013-12-24 11:00:00 0
2014-01-02 11:30:00 1
2014-01-03 11:50:00 0
2013-12-17 16:40:00 10
2013-12-18 10:00:00 0
2013-12-11 10:00:00 0
2013-12-18 11:45:00 0
2013-12-11 14:40:00 4
2010-05-25 13:05:00 0
2013-11-18 14:10:00 0
2013-11-27 11:50:00 3
2013-11-13 10:40:00 0
2013-11-20 10:40:00 1
2008-11-04 14:49:00 1
2013-11-18 10:05:00 0
2013-08-27 11:00:00 0
2013-09-18 16:00:00 0
2013-09-27 11:40:00 0

日期是索引。我使用以下方法将值减少到几个月:

dataFrame = dataFrame.groupby([lambda x: x.year, lambda x: x.month]).agg([sum])

哪些输出:

         content
sum
2006 3 66
4 65
5 48
6 87
7 37
8 54
9 73
10 74
11 53
12 45
2007 1 28
2 40
3 95
4 63
5 56
6 66
7 50
8 49
9 18
10 28

现在,当我绘制此 dataFrame 时,我希望每个月/每年的 x 轴显示为一个刻度。我尝试设置 xticks 但它似乎不起作用。这是如何实现的?这是我当前使用 dataFrame.plot() 绘制的图:

enter image description here

最佳答案

您可以使用 set_xtick()set_xticklabels():

idx = pd.date_range("2013-01-01", periods=1000)
val = np.random.rand(1000)
s = pd.Series(val, idx)

g = s.groupby([s.index.year, s.index.month]).mean()

ax = g.plot()
ax.set_xticks(range(len(g)));
ax.set_xticklabels(["%s-%02d" % item for item in g.index.tolist()], rotation=90);

输出:

enter image description here

关于python - 如何使用所有 xticks 绘制 pandas 多索引数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21281322/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com