我已经每隔5分钟收集一次传感器数据一个月(30天)。这意味着,我的时间序列数据总共有288 * 30个数据点。使用matplotlib绘制大量时间序列数据点
我想分散绘制数据(x轴:时间,y轴:传感器值)。 以下代码用于测试。
import pandas as pd
from matplotlib import pyplot as plt
import numpy as np
# generate time series randomly (length: 1 month)
rng=pd.date_range("2015-11-11",periods=288*30,freq="5min")
ts=pd.Series(np.random.randn(len(rng)),rng)
nr=3
nc=1
fig=plt.figure(1)
fig.subplots_adjust(left=0.04,top=1,bottom=0.02,right=0.98,wspace=0.1,hspace=0.1)
for i in range(3):
ctr=i+1
ax=fig.add_subplot(nr,nc,ctr)
ax.scatter(ts.index,ts.values)
ax.set_xlim(ts.index.min(),ts.index.max())
plt.show()
我已经生成了具有288×30的观测随机时间序列数据,并试图把它收回去散点图。但是,正如你所看到的,分析这个数字是不可能的。
我想重绘满足以下条件:
我想放大的图的版本。换句话说,一次显示某个时间范围(例如2〜3小时)的部分数据点。那么,相邻点之间应该有足够的空间。
我想将图保存为png或pdf文件。然后,如果我打开文件,图像(或pdf)查看器有一个水平滚动条,它使我能够浏览整个图形。
有没有人可以解决它?
我不认为这对matplotlib专家来说不难,但对我来说,这对初学者来说很难。
指定您需要_horizontally_放大图的放大版本非常重要,而不是双向缩放。 –