gpt4 book ai didi

python - 如何使用 python 更改 matplotlib 中 x 轴值的日期时间格式?

转载 作者:太空宇宙 更新时间:2023-11-03 16:27:28 25 4
gpt4 key购买 nike

如何使该图的 x 轴看起来更好?

在绘制数据框中的所有值时,有什么方法可以在 x 轴上仅显示 3 个值吗?

image

我尝试使用 plt.xticks(rotation=70) 但它仍然减少了我的数量..

如您所见,它以 MMM DD YYYY 格式显示日期。

I wanna something like MMM DD or DD MMM. Or even writing in 2 lines DD MM \n YYYY.

How can I achieve that?

这是用于生成图表的代码:

plt.plot(df_21d["Timestamp"], df_21d["Close"], label="Price", color="b")    

plt.title("BTC - 21 Dias")

plt.xlabel("Data")
plt.ylabel("Preco (em USD)")

plt.grid(True)

plt.show()

这是我的数据:

df_21d["时间戳"]

667   2016-05-27 08:00:00
668 2016-05-27 08:30:00
669 2016-05-27 09:00:00
670 2016-05-27 09:30:00
671 2016-05-27 10:00:00
Name: Timestamp, dtype: datetime64[ns]

df_21d["关闭"]

667    480.00
668 471.36
669 477.35
670 476.55
671 479.92
Name: Close, dtype: float64

我不知道是否必须格式化df_21d.Timestamp或者它是否是一个matplotlib配置。也许格式化时间戳并使用 plt.xticks() 将其作为向量传递...但我不确定如何做到这一点...

或者甚至可能只插入 x 轴的第一个、最后一个和中间值,例如:

plt.xaxis_labels = (df_21d["Timestamp"][1], 
df_21d["Timestamp"][len(df_21d["Timestamp"])/2],
df_21d["Timestamp"][len(df_21d["Timestamp"])])

最佳答案

这个答案可能对您有帮助: Not write out all dates on an axis, Matplotlib

本质上,你可以通过设置format来设置日期的格式:

plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%d %m'))

关于python - 如何使用 python 更改 matplotlib 中 x 轴值的日期时间格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37879842/

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