誰在崛起,誰在沒落?新一線城市競爭力盤點,用Python繪制動態(tài)圖帶你看懂!
CDA數(shù)據(jù)分析師 出品
作者:Mika
數(shù)據(jù):真達(dá)
后期:澤龍
【導(dǎo)讀】今天我們用數(shù)據(jù)來聊一聊新一線城市。
CDA數(shù)據(jù)分析師
Show me data,用數(shù)據(jù)說話
今天我們聊一聊 新一線城市
點擊下方視頻,先睹為快:
提到一線城市,大家馬上會想到北上廣深這四個超級大都市。除此之外,近年來新一線城市這個概念也越來越被大眾所熟知。
2013年,財經(jīng)媒體第一財經(jīng)提出了“新一線城市”的概念,以商業(yè)資源集聚度、城市樞紐性、城市人活躍度、生活方式多樣性以及未來可塑性作為評判的五大指標(biāo),針對全國幾百個地級市進(jìn)行了全新的排名,將未來最有潛力晉升傳統(tǒng)一線城市的15個城市稱為“新一線城市”。
作為距離一線城市最近的梯隊,新一線城市的榜單可以說含金量十足,每年的評選都備受關(guān)注。

(來自維基百科)
2020年15座新一線城市包括成都、重慶、杭州、武漢、西安、天津、蘇州、南京、鄭州、長沙、東莞、沈陽、青島、合肥、佛山。
(來自21世紀(jì)報道)
其中在人口增量方面:西安由于大幅降低落戶門檻,且將西咸新區(qū)人口納入人口總數(shù)后,在近3年以新增128.87萬常住人口,排名15個新一線城市常住人口增量第一位。常住人口增量連年提升的杭州,則以近3年117.2萬的增量,排名新一線城市第二位。
和它們相比,天津近3年以來出現(xiàn)常住人口-0.29萬的增長,沈陽3年增長了3萬,勢頭微弱。
今天我們就來用數(shù)據(jù)全面解讀這15座城市。
這次我們使用Python的動態(tài)可視化庫plotly,對這15座城市從2000年到2019年這20年的GDP、人口以及房價數(shù)據(jù)進(jìn)行了可視化。下面就讓我們來一起看看吧!
我們的數(shù)據(jù)從以下四個維度展開:
新一線城市2000-2019年GDP變化趨勢
新一線城市2000-2019年GDP和人口變化趨勢
新一線城市2001-2019年人口增量數(shù)據(jù)
新一線城市近10年平均房價走勢圖
我們使用Python的可視化庫Plotly對15座新一線城市的人口/GDP/房價數(shù)據(jù)進(jìn)行動態(tài)可視化展示。plotly是一個基于javascript的繪圖庫,繪圖種類豐富,效果美觀,使用Plotly可以畫出很多媲美Tableau的高質(zhì)量圖。
如果你沒有安裝plotly,可以使用以下代碼進(jìn)行pip安裝:
pip install plotly -i https://pypi.tuna.tsinghua.edu.cn/simple
首先導(dǎo)入我們需要使用的包,其中pandas用于數(shù)據(jù)整理,plotly用于數(shù)據(jù)可視化。
# 導(dǎo)入包
import pandas as pd
import plotly as py
import plotly.graph_objs as go
import plotly.express as px
from plotly import tools
使用pandas讀入并合并數(shù)據(jù)集,我們選取的數(shù)據(jù)來自于國家統(tǒng)計局網(wǎng)站,該數(shù)據(jù)包含了15座新一線城市自2000年~2019年20年期間的GDP和人口數(shù)據(jù),這是一份帶有時間序列的面板數(shù)據(jù),適合進(jìn)行動態(tài)可視化繪圖使用。
# 讀入數(shù)據(jù)
df_gdp = pd.read_excel('../data/新一線城市人口和GDP.xlsx', sheet_name=0)
df_pop = pd.read_excel('../data/新一線城市人口和GDP.xlsx', sheet_name=1)
# 合并數(shù)據(jù)
df_all = pd.merge(left=df_gdp, right=df_pop, on=['城市', '年份'])
df_all = df_all.sort_values(['城市','年份'])
df_all.head()

Plotly有兩個很常用的繪圖模塊,分別是graph_objs和express,此次我們主要使用express進(jìn)行動態(tài)可視化圖形的繪制,使用它可以輕松繪制如散點圖、條形圖、漏斗圖、?;鶊D等圖形。
使用官網(wǎng):
https://plotly.com/python/plotly-express/
繪圖的步驟也非常簡單:
直接使用px調(diào)用某個繪圖方法,會自動創(chuàng)建畫布,并畫出圖形。
展示圖形,可以直接在notebook中展示,也可以使用py.offline.plot(fig,filename="XXX.html")代碼保存成html網(wǎng)頁動態(tài)圖片。
接下來我們演示使用plotly.express繪制動態(tài)條形圖和散點圖。
首先繪制一個動態(tài)條形圖,用于展示15座城市隨時間走勢的GDP變化趨勢,調(diào)用bar的方法即可。
繪圖主要參數(shù)解釋:
-
data_frame:數(shù)據(jù)框名稱 -
x:列名,展示的維度 -
y:列名,展示的度量 -
color:顏色 -
text:條形圖標(biāo)記文本 -
title:標(biāo)題 -
range_y:y軸的刻度范圍 -
animation_frame:列名,控制動畫幀
# 條形圖
fig2 = px.bar(df_all, x='城市', y='GDP', color='城市', text='GDP',
title='新一線城市近20年GDP變化趨勢',
range_y=[300, 25000],
animation_frame='年份',
)
fig2.update_layout(yaxis_title='GDP(億元)') # 更新布局配置
py.offline.plot(fig2, filename='2000-2019年GDP變化趨勢.html')
然后繪制一個動態(tài)散點圖,用于展示15座城市隨時間走勢的GDP和人口變化趨勢,調(diào)用scatter的方法即可。繪圖步驟和上述類似。
# 散點圖
fig3 = px.scatter(df_all, x='GDP', y='人口', animation_frame='年份', animation_group='城市',
size='人口', color='城市', hover_name='城市', size_max=50, text='城市',
range_x=[300, 25000], range_y=[150, 4000],
title='新一線城市近20年GDP和人口變化趨勢',
)
fig3.update_layout(xaxis_title='GDP(億元)', yaxis_title='人口(萬人)')
py.offline.plot(fig3, filename='2000-2019年GDP和人口變化趨勢.html')
下面我們來具體看下可視化效果:
新一線城市
2000-2019年GDP變化趨勢
新一線城市
2000-2019年GDP和人口變化趨勢
新一線城市
2001-2019年人口增量數(shù)據(jù)
新一線城市近10年平均房價走勢圖
CDA數(shù)據(jù)分析師
本文出品:CDA數(shù)據(jù)分析師(ID: cdacdacda)
參考文獻(xiàn):
新一線城市人口競爭力大盤點:杭州亮了,3年激增百萬!有地方卻負(fù)增長,這些指標(biāo)很關(guān)鍵!
https://mp.weixin.qq.com/s/btYEttPoeCQ8hOyiRaoPAw
維基百科-一線城市
https://zh.wikipedia.org/wiki/%E4%B8%80%E7%BA%BF%E5%9F%8E%E5%B8%82
?推薦閱讀 READ MORE
(點擊下方圖片閱讀)
吃貨的自我修養(yǎng) | 口味蝦哪家最好吃?我用Python告訴你
帶你用Python解讀高考數(shù)據(jù):全國哪里的高校最多?什么專業(yè)最熱門?

?CDA課程咨詢
