gpt4 book ai didi

python - 以 AM/PM 格式绘制 Pandas Datetime 时间序列

转载 作者:太空宇宙 更新时间:2023-11-03 11:49:19 30 4
gpt4 key购买 nike

我有一个带有时间戳索引的 pandas 系列,我想绘制它。

print example.head()

2015-08-11 20:07:00-05:00 26
2015-08-11 20:08:00-05:00 66
2015-08-11 20:09:00-05:00 71
2015-08-11 20:10:00-05:00 63
2015-08-11 20:11:00-05:00 73

但是当我用 pandas 绘制它时:

plt.figure(figsize = (15,8))
cubs1m.plot(kind='area')

我希望 y 轴上的值以上午/下午格式 (8:08PM) 显示,而不是军事时间 (20:08)。有没有简单的方法可以做到这一点?

另外,我如何控制用 pandas 绘制的刻度数和标签数?

提前致谢。

最佳答案

您的问题有两个要素:

  1. 如何控制图上刻度/标签的数量
  2. 如何将 24 小时制改为 12 小时制

轴方法 set_xticksset_yticksset_xticklabelsset_yticklabels 控制刻度和标签:

import matplotlib.pyplot as plt

plt.plot(range(10), range(10))
plt.gca().set_xticks(range(0,10,2))
plt.gca().set_xticklabels(['a{}'.format(ii) for ii in range(0,10,2)])

要更改时间格式,请使用 pd.datetime.strftime:How can I convert 24 hour time to 12 hour time?

import pandas as pd

data = pd.Series(range(12), index=pd.date_range('2016-2-3 9:00','2016-2-3 20:00', freq='H'))
ax = data.plot(xticks=data.index[::2])
ax.set_xticklabels(data.index[::2].map(lambda x: pd.datetime.strftime(x, '%I %p')))

这个问题涵盖了另一种绘制日期的方法:Pandas timeseries plot setting x-axis major and minor ticks and labels

关于python - 以 AM/PM 格式绘制 Pandas Datetime 时间序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31955882/

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