如何在Python中改变xaxis和yaxis的比例

2024-05-29 04:15:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我们使用Python,从MySQL数据库检索数据。我们需要创建一个seriel图,我们使用matplotlib来实现。不幸的是,我们没有成功地创造了情节

绘图应如下所示:

enter image description here

不幸的是,我们的情节是这样的:

enter image description here

我们讨论过,如果我们改变x轴和y轴,这个问题可能会得到解决。我们不需要在x轴上有大量的时间戳(这可能是它在黑色中模糊的原因),我们可以设置以天为单位的日期,如第一张图所示

代码

代码提取第一个时间戳,然后设置一周的范围,所以我们只从第一个时间戳和前一周获取数据

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')

Tags: fromreadsqldatatopicraw时间conn

热门问题