在使用MySQLdb和matplotlib时,我试图绘制温度等天气数据。所以我首先要做的是:
[...]
result = cursor.fetchall()
date = [x[0] for x in result]
outdoor = [x[1] for x in result]
我想标记每年,每月,每周和每一天的最小值和最大值。
我尝试了以下1个月,例如可以:
for item in date:
if item.month == 5:
print(item)
print(date.index(item))
找出整个日期列表的起始和结束索引,但代码的性能是最差的。
所以我需要的是高性能拆分命令,我的问题是: 如何拆分包含一年日期时间的列表,为每月,每周和每天的值调整,以便能够找到每个月,每周和每天的min()和max()?
找出最大最小值:
hi = outdoor.index(max(outdoor))
lo = outdoor.index(min(outdoor))
绘制图形和最小值,最大值:
plt.plot(date, outdoor, color = '#bbbbff')
plt.plot(date[hi], outdoor[hi], 'or')
plt.plot(date[lo], outdoor[lo], 'ob')