【问题标题】:How to plot timeseries with many NaNs?如何绘制具有许多 MaN 的时间序列?
【发布时间】:2021-12-31 11:17:37
【问题描述】:

最初我有一个数据框,其中包含一些设备的功耗,如下所示:

我想绘制不同设备的功耗与时间关系图,每 6 个可能日期中的一个绘制一个图。按日期分组后,我得到了这样的图(对于每个组 = 日期):

然后我尝试创建类似的情节,但切换日期和设备角色,以便按设备分组并按日期着色。为了做到这一点,我准备了这个数据框:

它与上一个类似,但由于测量时间不同而具有许多 NaN 值。我认为这不会有问题,但是在按设备分组后,子图看起来像这样(ex 只是从通过组 = 设备的循环中提取的子数据帧的名称):

这是 ex 数据框(观察之间的平均延迟约为 20 秒)

问题:我应该怎么做才能使按设备分组的情节看起来像按日期分组的情节?(我想使用 ex 数据框但以某种方式处理 NaN。)

【问题讨论】:

    标签: matplotlib time-series plotly-python timeserieschart


    【解决方案1】:

    我在回答 similar question: ex.interpolate(method='linear').plot() 时找到了解决方案。这条线将通过绘图之间的插值填补数据点之间的空白。结果如下:

    另一件有帮助的事情是添加.plot(marker='o', ms = 3),它不会填补点之间的空白,但至少会使点可见(以前的一些点,主要是能源消耗的峰值在整个地块的规模上太小了)。结果如下:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多