import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import warningswarnings.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 warningswarnings.filterwarnings(action='ignore')
plt.rcParams['font.sans-serif']= ['SimHei']
plt.rcParams['axes.unicode_minus'] = Falsedata = 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的世界里,我們不斷探索, 用數據,繪制出最美的風景。