
"""Python监测户外温度,存入数据库,绘图,得出最高、低、平均温度准备工作:购买智能温度计传感器,安装电脑软件将温度传感器放到户外,USB连接到电脑,注意防范雷电及其他任......
"""Python监测户外温度,存入数据库,绘图,得出最高、低、平均温度准备工作:购买智能温度计传感器,安装电脑软件将温度传感器放到户外,USB连接到电脑,注意防范雷电及其他任何影响安全因素安装Mysql或是Postgresql等数据库pip安装pyecharts等绘图工具包待收集温度数据(CSV格式)后,temperatusre_tosql(do_dt,file_path,place)存入数据库resample_wm(df,rule_wm='1H')按小时或天聚合数据"""删除年月日变成标准时间格式df['time']=df['time'].('月',':')df['time']=df['time'].('日','')df['place']=place按日期升序排序df_nv=df__index([item1])df_nv=df__index(drop=False)去重item1='time'df=_values(by=[item1],ascing=True)重新设定序号print(df)df=_index(df['time'])df=df[['temperature']]df=(rule=rule_wm).mean()print(df)returndfdeftr(x):(x['time'],"%Y:%m:%d%H:%M:%S")deftr_wm(x):(x,"%H:%M:%S")if__name__=='__main__':file_path1="H:\\.\2022-10-078284"加载数据入库昨天yes_date=yes_("%Y:%m:%d")yes_date='2022:10:09'dt_sim=yes_date[0:4]+yes_date[5:7]+yes_date[8:]print('yes_date',yes_date)file_wm=r"d:\.\{}.html".format(dt_sim)筛选数据_duplicates(subset=['time','temperature'],keep='first',inplace=True)按小时聚合数据print(df_1h)high=df1['temperature'].max()low=df1['temperature'].min()mean=df1['temperature'].mean()df['time']=(tr,axis=1)df_wm=df1df_wm['time_wm']=df_wm['time'].apply(lambdax:tr_wm(x))line=(Line().add_xaxis(df__()).add_yaxis(dt_sim,df_()).set_global_opts(title_opts=(title="户外温度",subtitle="北京平谷")))(file_wm)#print(dt_sim,'户外温度监测数据量:',len(df1))print(dt_sim,'最高户外温度时间:',df1[(df1['temperature']==high)].iloc[-1].time,'温度:',round(high,2))print(dt_sim,'最低户外温度时间:',df1[(df1['temperature']==low)].iloc[-1].time,'温度:',round(low,2))print(dt_sim,'平均户外温度:',round(mean,2))"""运行结果:2022-10-0913:00:0017.8035782022-10-0914:00:0016.3649972022-10-0915:00:0016.6337152022-10-0916:00:0015.1203292022-10-0917:00:0013.6877562022-10-0918:00:0012.6733592022-10-0919:00:0011.5765532022-10-0920:00:0011.1667722022-10-0921:00:0010.6407702022-10-0922:00:009.9999442022-10-0923:00:009.7009户外温度监测数据量:10588320221009最高户外温度时间:2022-10-0911:51:19温度:23.2520221009最低户外温度时间:2022-10-0904:48:18温度:7.5620221009平均户外温度:13.09""""""Pgabc2022000008author:"""