gpt4 book ai didi

python - matplotlib 中的非单调 x 范围

转载 作者:行者123 更新时间:2023-11-28 22:58:37 25 4
gpt4 key购买 nike

我想显示一个图表作为小数小时的函数,其中 x 轴从 24 小时跳到 0 小时。然而,绘制的数量应该跨越日期边界平滑地连接起来。我可以在 x 轴上使用单调递增的不同时间单位,但我想在 x 轴上的整数刻度位置显示小时数,我该怎么做?

hours = [19,20.5,21.5,22.5,23.5,0.5,1.5,2.5,3,4]
list1 = [random.randint(1,10) for x in range(10)]
plt.plot(hours, list1)

最佳答案

我假设 hours 列表是从更完整的日期结构中剥离时间的结果?

如果您转换日期 datetime 对象(包括日期信息,因此它们确实是单调的),您可以直接根据日期绘制 list1。然后你可以

import datetime

d = datetime.datetime.now()
delta = datetime.timedelta(hours=1)
dates = [d]
for j in range(20):
    dates.append(dates[-1] + delta)

date_list = dates
list1 = rand(len(dates))
figure()
ax = gca()
ax.plot(date_list,list1)
ax.xaxis.set_major_locator(
    matplotlib.dates.HourLocator()
)
ax.xaxis.set_major_formatter(
    matplotlib.dates.DateFormatter('%H')
)

改编自here

result of code

关于python - matplotlib 中的非单调 x 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13711831/

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