创建多个设备的单个时间序列图

数据挖掘 Python 时间序列 matplotlib
2022-02-25 03:07:43

我有一个数据集,其中存储了 30 个设备的测量值。每个设备都有大约 4000 个值,并且它的结构也是如此:

device01 0.02;0.13;1.15;0.10;8.30;........;4.20
device02 0.06;0.13;1.40;0.03;7.40;........;6.30
........
device30 0.03;0.24;1.10;0.43;4.40;........;2.30

每个值每 X 秒获得一次(我没有时间戳参考,我只知道它们是通过时间获得的)。我如何绘制它们以获得像这张图片中的单个时间序列图? 在此处输入图像描述

如您所见,许多值确实重叠,我怎样才能使它们在图中连续?

1个回答

您可以通过循环数据集并绘制到相同的轴上来创建重叠图:

ax, fig = plt.subplots()
n = 30 # number of device
for i in (number+1 for number in range(n)):
    ax.plot(data[i], label='device_0' + i)

plt.show()

最好先将您的数据放入pandas Dataframe

关于 X 轴,您需要通过将开始日期的估计值添加到数据集中的每个值来将秒转换为日期时间。