我们正在使用Python,并从MySQL数据库中检索数据。我们需要创建一个Seriel图,并使用matplotlib来完成。不幸的是,我们在创建情节方面没有成功。
情节应如下所示:
不幸的是,我们的情节看起来像这样:
我们已经讨论过,如果更改x轴和y轴,此问题可能会得到解决。与其在x轴上具有大量带有时间的时间戳(这可能是其以黑色模糊的原因),不如在第一幅图中所示,我们可以以天为单位设置日期。
代码
代码正在选择第一个时间戳,然后设置一个星期的范围,因此我们仅从第一个时间戳和之后的1周获取数据。
engine = create_engine("mysql://root:DTULab@123@localhost/Afgangsprojekt")
conn = engine.connect()
firstTime = pd.read_sql('SELECT timestamp FROM Raw_Data WHERE topic = "lpn1"', conn).astype(str).values[:,0].tolist()
t = (pd.to_datetime(firstTime[0]) + datetime.timedelta(weeks=1))
time = pd.read_sql(f'SELECT timestamp FROM Raw_Data WHERE topic = "lpn1" AND timestamp < "{t}"', conn).astype(str).values[:,0].tolist()
temp = pd.read_sql(f'SELECT temperature FROM Raw_Data WHERE topic = "lpn1" AND timestamp < "{t}"', conn).astype(str).values[:,0].tolist()
# plot
plt.plot(time, temp)
plt.gcf().autofmt_xdate()
plt.savefig('foo.png')