【发布时间】:2017-12-08 17:35:50
【问题描述】:
我有多个时间序列,每个时间序列都有不同的开始和结束时间。当我使用 pandas 和 matplotlib 绘制它们时,我得到了从 t0 开始到 tx 结束的每个单独系列的漂亮图表。我知道我不能在一个情节中绘制不同长度的系列,但我想至少在几个月内查看它们。
例如,假设我有两个系列:1,从 4 月开始,到 9 月结束,2 从 2 月开始,到 12 月结束。
如何将它们可视化,以便将每个系列绘制在年度图表(1 月至 12 月)上,即使数据不跨越这些日期?我想看到他们一个一个地排着队。
到目前为止,我有这样的情况,使用 xlim=('jan', 'dec'),但我只是得到空白图
for dfl in dfl_list[0:2]:
dfl.plot(x='DateTime', y=['VWCmax', 'VWCmin'],
ax=p1, fontsize=15, xlim=('Jan', 'Dec'))
p1.set_title('Time vs VWC', fontsize=15)
p1.set_ylabel('VWC (%) ' + '{}'.format(imei), fontsize=15)
p1.set_xlabel('Time Stamp', fontsize=15)
我也尝试过 xticks 而不是 xlim,但我也得到了空白图。
【问题讨论】:
-
可能看起来很笨拙-但如果所有其他方法都失败了,那么添加具有该日期的空白记录是一个可行的选择吗?在伪代码
if min(month(date)) != 'January' then Create_Blank_Record()中做这样的事情 -
哼,也许,如果没有更好的解决方案,它值得一试。感谢您的建议。
-
不清楚是什么问题。默认情况下,轴将扩展以显示所有数据,因此在一个图中绘制两条不同的曲线将完全显示两条曲线。因此,您要求的是默认行为。如果您在到达那里时遇到问题,您需要提供问题的minimal reproducible example,即可以复制、粘贴和运行代码以查看不需要的结果并帮助您纠正它。
标签: pandas matplotlib time-series