python-期末代码复习

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import warnings

warnings.filterwarnings(action='ignore')
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

你提供的这两行代码是Python编程语言中用于设置matplotlib库绘图时的警告信息和字体样式的代码片段。

data = pd.read_excel('file_name.xlxs')
print(data.head())

print(data[data.isnull()])
data = data.replace(0, np.NAN)
print(data.isnull)

1. `warnings.filterwarnings(action='ignore')`:

这行代码的作用是设置Python的警告过滤器,使其忽略所有的警告信息。`warnings`模块用于发出警告信息,`filterwarnings`函数用于设置警告过滤器。`action='ignore'`参数表示忽略所有警告。

2. `plt.rcParams['font.sans-serif'] = ['SimHei']`:

这行代码是设置matplotlib绘图时默认使用的无衬线字体为“SimHei”,即黑体。`plt`是matplotlib.pyplot模块的常用缩写,`rcParams`是一个字典,用于设置matplotlib的全局配置参数。这里指定了默认的中文字体,以确保中文字符可以被正确显示。

3. `plt.rcParams['axes.unicode_minus'] = False`:

这行代码设置matplotlib在显示负号时的行为。默认情况下,matplotlib会使用Unicode字符来显示负号,这在某些情况下可能会导致显示问题。将此参数设置为`False`意味着matplotlib将使用传统的“-”字符来表示负号,而不是Unicode字符。

这些设置通常用在Python脚本的开头,以确保绘图时的警告信息和字体显示符合预期。如果你在使用matplotlib绘图时遇到中文显示问题或警告信息干扰,可以尝试使用这些设置。

import numpy as np
import pandas as pd
import matplotlib.pyplot as  plt
import warnings

warnings.filterwarnings(action='ignore')
plt.rcParams['font.sans-serif']= ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

data = pd.read_excel('北京市空气质量数据.xlsx')
print(data.head())
# 去除空值
print(data[data.isnull()])
data = data.replace(0, np.NAN)
print(data.isnull)
# 通过这个函数可以把里面的0的内容最终都变成一个基础的空值
# 各年的AQI平均值
plt.figure(figsize=(10,5))
plt.plot(data['AQI'],linestyle='-')
plt.axhline(y=data['AQI'].mean(), color='red',label='AQI总平均值')
data['年'] = data['日期'].apply(lambda x: x.year)
aqi_mean = data['AQI'].groupby(data['年']).mean().values
year = ['2014年','2015年','2016年']
color = ['yellow','green','orange']
for i in range(3):
    plt.axhline(y=aqi_mean[i],color=color[i],label=year[i])
plt.yticks([data['AQI'].mean()],['AQI平均值'])
plt.xticks([1,365,365*2 ],['2014','2015','2016'])
plt.xticks()
plt.legend()
# 空气质量最差日
plt.text(x=list(data['AQI']).index(data['AQI'].max()), y=data['AQI'].max() - 20, s='空气质量最差日', color='red')
plt.show()
# 空气质量最差日
# AQI均值折线图
plt.figure(figsize=(10,8))
plt.subplot(2,2,1)
plt.plot(aqi_mean, linestyle='-')
plt.xticks([0,1,2],year)
plt.title('AQI均值')
# AQI直方图
plt.subplot(2,2,2)
plt.hist(data['AQI'],bins=20)
plt.title('AQI分布')
# pm2.5与AQI散点图
plt.subplot(2,2,3)
plt.scatter(data['PM2.5'],data['AQI'],marker='.')
plt.xlabel("PM2.5")
plt.ylabel('AQI')
plt.title('pm2.5与AQI散点图')
plt.subplot(2,2,4)
# 空气质量的比列
tmp = pd.value_counts(data['质量等级'],sort=False)
share = tmp / sum(tmp)
plt.pie(share, labels=tmp.index, autopct='%3.1f%%')
plt.title('空气质量情况')
plt.show()

# PM10和AQI的散点图
plt.subplot(2,2,2)
plt.scatter(data['PM2.5'],data['AQI'],marker=',')
plt.xlabel("PM10")
plt.ylabel("AQI")
plt.title('pm10和AQI散点图')
plt.show()
# 各种参数的一个对比
# SO2和AQI散点图
plt.subplot(2,2,2)
plt.scatter(data['SO2'],data['AQI'],marker=',')
plt.xlabel("SO2")
plt.ylabel("AQI")
plt.title('SO2和AQI散点图')
plt.show()
# CO和AQI散点图
plt.subplot(2,2,3)
plt.scatter(data['CO'],data['AQI'],marker=',')
plt.xlabel("CO")
plt.ylabel("AQI")
plt.title('CO和AQI散点图')
plt.show()
# CO和AQI散点图
plt.subplot(2,2,4)
plt.scatter(data['NO2'],data['AQI'],marker=',')
plt.xlabel("NO2")
plt.ylabel("AQI")
plt.title('CO和AQI散点图')
plt.show()
# 各种参数的一个分部

歌词展示:
 

(Verse 1) 在代码的海洋里,我轻轻航行, warnings.filterwarnings,让警告消声。 plt.rcParams,设置我的舞台, SimHei字体,绘制每一条线。

(Chorus) 数据,数据,你如此神秘, pd.read_excel,将你从沉睡中唤醒。 print(),展示你的容颜, data.isnull(),寻找你的空缺。

(Verse 2) data.replace(),填补你的空白, plt.figure(),为你打开新世界。 plt.plot(),画出时间的轨迹, plt.axhline(),标出平均的界线。

(Bridge) 每一年,每一月,每一天, data.apply(),计算你的变迁。 plt.text(),记录最差的空气, 红字标记,提醒我们珍视蓝天。

(Chorus) 数据,数据,你如此真实, plt.subplot(),分割你的故事。 plt.scatter(),点连成线, plt.hist(),分布你的秘密。

(Verse 3) plt.xticks()plt.yticks(),定位你的坐标, plt.legend(),讲述你的传说。 plt.title(),赋予你名字, pd.value_counts(),数着你的每一次出现。

(Bridge) plt.pie(),分割你的比例, sum(),汇聚你的力量。 plt.show(),最终展现, 你的全貌,如此壮观。 (Outro) 代码结束,图表呈现, 像一首歌,唱出数据的故事。 Python的世界里,我们不断探索, 用数据,绘制出最美的风景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值