tableau項目實戰-中國五城市六年pm2.5大數據可視化


中國五城市六年pm2.5大數據可視化

一,典型課題研究

中國五城市六年的pm2.5的值與那些因素有關,與PM2.5的變化

二,數據

1,數據源:https://www.kaggle.com/uciml/pm25-data-for-five-chinese-cities

 

 

 

 2,數據集介紹

Context

PM2.5 readings are often included in air quality reports from environmental authorities and companies. PM2.5 refers to atmospheric particulate matter (PM) that have a diameter less than 2.5 micrometers. In other words, it's used as a measure of pollution.

PM2.5讀數通常包含在環境部門和公司的空氣質量報告中。PM2.5是指直徑小於2.5微米的大氣顆粒物(PM)。換句話說,它被用作污染的量度。

3,字段含義

  • No: row number 行號
  • year: year of data in this row 該行中數據的年份
  • month: month of data in this row 該行中數據的月份
  • day: day of data in this row 該行中數據的日期
  • hour: hour of data in this row 該行中的小時數據
  • season: season of data in this row 此行中的數據季節
  • PM: PM2.5 concentration (ug/m^3) PM2.5濃度(ug / m ^ 3)
  • DEWP: Dew Point (Celsius Degree) 露點(攝氏溫度)
  • TEMP: Temperature (Celsius Degree) 溫度(攝氏溫度)
  • HUMI: Humidity (%) 濕度(%)
  • PRES: Pressure (hPa) 壓力(hPa)
  • cbwd: Combined wind direction 組合風向
  • Iws: Cumulated wind speed (m/s) 累積風速(m / s)
  • precipitation: hourly precipitation (mm) 每小時降水量(毫米)
  • Iprec: Cumulated precipitation (mm) 累積降水量(毫米)

三,提出問題

①各城市PM2.5的分布並找出其規律

②各城市PM2.5收什么影響,影響程度如何

③各城市一年的PM2.5的分布主要集中在哪些時間段PM2.5的值比較高

四,操作步驟

1,從kaggle中導出數據,並對數據進行清洗

①把分開的時間字符串通過periodIndex的方法轉化為pandas的時間類型

②把datetime 設置為索引

③進行降采樣

④處理缺失數據,刪除缺失數據

# coding=utf-8
import pandas as pd
from matplotlib import pyplot as plt

file_path = "./PM2.5/BeijingPM20100101_20151231.csv"

df = pd.read_csv(file_path)

# 把分開的時間字符串通過periodIndex的方法轉化為pandas的時間類型
period = pd.PeriodIndex(year=df["year"], month=df["month"], day=df["day"], hour=df["hour"], freq="H")
df["datetime"] = period
# print(df.head(10))

# 把datetime 設置為索引
df.set_index("datetime", inplace=True)

# 進行降采樣
df = df.resample("7D").mean()
print(df.head())
# 處理缺失數據,刪除缺失數據
# print(df["PM_US Post"])

data = df["PM_US Post"]
data_china = df["PM_Nongzhanguan"]

print(data_china.head(100))
# 畫圖
_x = data.index
_x = [i.strftime("%Y%m%d") for i in _x]
_x_china = [i.strftime("%Y%m%d") for i in data_china.index]
print(len(_x_china), len(_x_china))
_y = data.values
_y_china = data_china.values
plt.figure(figsize=(20, 8), dpi=80)

plt.plot(range(len(_x)), _y, label="US_POST", alpha=0.7)
plt.plot(range(len(_x_china)), _y_china, label="CN_POST", alpha=0.7)

plt.xticks(range(0, len(_x_china), 10), list(_x_china)[::10], rotation=45)

plt.legend(loc="best")

plt.show()

 

2,打開tableau連接數據源新生成文件

 

 3,將城市轉換為地理類型,並將經度緯度放入行和列中,將城市放入詳細信息,三維PM2.5三個測點的平均值放入大小和顏色

  得出結論:北京空氣質量最差,上海和廣州空氣質量最好,成都因地處四川盆地,工業污染難以被風吹散,空氣質量較其它城市較差。

 

 4,將城市和季節拖到列中,行中拖入PM2.5三個測量點的評價值,並將城市拖入到顏色中,並對其進行排序

    得出結論:五個城市連續六年PM2.5大小在一年四季的分布,廣州和上海的空氣質量比較適宜

 5,將時間放入列中,行中放入PM2.5的平均值,一次新建表,時間選擇年,季度,月份,和小時,依次放入一個儀表盤

    得出結論,PM2.5逐年計划和月份以及小時的變化

 

 6,將累計風速,PM2.5三個測點的平均值分別放入列和行,選擇維度數據本身,去掉重復值,將城市放入篩選器,季節放入顏色,風向放入形狀選擇一個城市

    結論:通過可視化可以得出PM2.5與風速的關系,點擊查看單個城市的情況,風速越大,PM2.5越低,比如北京,刮大風總是會刮西北風

 

 7,將風向放入列,三個點的平均值放入行中,城市放入篩選器,觀察不同城市PM2.5大小與風向的關系

 

 8,觀察降水量與PM2.5的多少,可以得出結論,降水量越大,PM2.5越低

 

 9,依次將大氣壓,相對濕度,溫度等都會對其PM2.5的多少產生影響

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM