张家口每天平均气温,降雨散点图,每年天气状况汇总

张家口每天平均气温,降雨散点图

import pandas as pd

import matplotlib.pyplot as plt
import openpyxl
from pandas import Series, DataFrame

plt.rcParams['font.sans-serif'] = ['SimHei']  # 显示中文标签
plt.rcParams['axes.unicode_minus'] = False

df = pd.read_excel('../54401.01.02.2005.15.05.2022.1.0.0.cn.utf8.00000000.xls', header=6)


def change_time(x):
    return x.split(' ')[0]


df['当地时间 张家口市'] = df['当地时间 张家口市'].map(change_time)

df['RRR'].fillna(0, inplace=True)
df['RRR'] = df.RRR.map(lambda x: 0 if x == '无降水' or x == '降水迹象' else x)

time_lis = df['当地时间 张家口市'].unique()
mean_lis = []
max_lis = []
min_lis = []
RRR_lis = []
for i in range(0, len(time_lis)):
    newdf = df[df['当地时间 张家口市'] == time_lis[i]]
    mean_lis.append(newdf['T'].mean())
    max_lis.append(newdf['T'].max())
    min_lis.append(newdf['T'].min())
    RRR_lis.append(newdf['RRR'].sum())
# 创造每天的记录
perdayDict = {'时间': time_lis, '平均气温': mean_lis, '最高气温': max_lis, '最低气温': min_lis, '降水量': RRR_lis}
perday_df = pd.DataFrame(perdayDict)
perday_df.to_excel("./perday_df.xlsx", encoding="utf-8")
print(perday_df)

# 绘制每天降雨量散点图
plt.scatter(time_lis, RRR_lis)
plt.title('张家口每天降雨散点图')
plt.show()

# 绘制每天平均气温散点图
plt.scatter(time_lis, mean_lis)
plt.title('张家口每天平均气温散点图')
plt.show()

张家口每天降雨散点图
平均气温散点图

张家口每年天气状况汇总

import pandas as pd
import matplotlib.pyplot as plt
from pandas import Series, DataFrame

plt.rcParams['font.sans-serif'] = ['SimHei']  # 显示中文标签
plt.rcParams['axes.unicode_minus'] = False

df = pd.read_excel('./perday_df.xlsx')


def change_time(x):
    return x.split('.')[-1]


df['时间'] = df['时间'].map(change_time)
# df['RRR'].fillna(0, inplace=True)
# df['RRR'] = df.RRR.map(lambda x: 0 if x == '无降水' or x == '降水迹象' else x)
time_lis = df['时间'].unique()
hot_days = []
cold_days = []
rain_days = []
for i in range(0, len(time_lis)):
    newdf = df[df['时间'] == time_lis[i]]
    sumdays_hot = 0
    sumdays_cold = 0
    sumdays_rain = 0
    #炎热天数
    new_hot_df = newdf[newdf['最高气温'] > 30]
    sumdays_hot = new_hot_df['最高气温'].count()
    hot_days.append(sumdays_hot)
    #寒冷天数
    new_cold_df = newdf[newdf['最低气温'] < -10]
    sumdays_cold = new_cold_df['最低气温'].count()
    cold_days.append(sumdays_cold)
    #下雨天数
    new_rain_df = newdf[newdf['降水量'] != 0]
    sumdays_rain = new_cold_df['降水量'].count()
    rain_days.append(sumdays_rain)

plt.plot(time_lis, hot_days, color='red' ,label='每年炎热天数')
plt.plot(time_lis, cold_days, color='green',label='每年寒冷天数')
plt.plot(time_lis, rain_days,  color='blue', label='每年下雨天数')
plt.title('张家口每年天气状况汇总')
plt.legend()
plt.show()


  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值