我收集了一个月(30天)每5分钟一次的传感器数据。
也就是说,我有一个timeseries数据,总共有288*30个数据点。在
我想分散数据(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专家来说并不难,但对我这个初学者来说却相当困难。在