🧑 博主簡介:曾任某智慧城市類企業
算法總監
,目前在美國市場的物流公司從事高級算法工程師
一職,深耕人工智能領域,精通python數據挖掘、可視化、機器學習等,發表過AI相關的專利并多次在AI類比賽中獲獎。CSDN人工智能領域的優質創作者,提供AI相關的技術咨詢、項目開發和個性化解決方案等服務,如有需要請站內私信或者聯系任意文章底部的的VX名片(ID:xf982831907
)
💬 博主粉絲群介紹:① 群內初中生、高中生、本科生、研究生、博士生遍布,可互相學習,交流困惑。② 熱榜top10的常客也在群里,也有數不清的萬粉大佬,可以交流寫作技巧,上榜經驗,漲粉秘籍。③ 群內也有職場精英,大廠大佬,可交流技術、面試、找工作的經驗。④ 進群免費贈送寫作秘籍一份,助你由寫作小白晉升為創作大佬。⑤ 進群贈送CSDN評論防封腳本,送真活躍粉絲,助你提升文章熱度。有興趣的加文末聯系方式,備注自己的CSDN昵稱,拉你進群,互相學習共同進步。
【數據可視化-100】使用 Pyecharts 繪制人口遷徙圖:步驟與數據組織形式
- 1. 簡介
- 2. 數據格式
- 3. 繪圖步驟
- 3.1 安裝 Pyecharts
- 3.2 準備數據
- 3.3 繪制地圖
- 4. 完整代碼
- 4.1 代碼說明
- 5. 運行結果
1. 簡介
??人口遷徙圖是一種展示人口流動情況的可視化圖表,通常用于分析人口遷移的來源地和目的地。pyecharts
是一個強大的 Python 數據可視化庫,支持多種圖表類型,包括地圖和地理坐標系,非常適合繪制人口遷徙圖。
2. 數據格式
??人口遷徙圖的數據通常包含以下幾部分:
- 起點城市和終點城市:表示人口遷移的來源地和目的地。
- 遷移人數:表示從起點城市到終點城市的人口數量。
??數據格式示例:
data = [("廣州", "上海", 55),("廣州", "北京", 66),("廣州", "杭州", 77),("廣州", "重慶", 88),("河南", "江蘇", 99),("河南", "浙江", 111),("河南", "上海", 121),("河南", "廣東", 131),
]
3. 繪圖步驟
3.1 安裝 Pyecharts
??確保你已經安裝了 pyecharts
。如果尚未安裝,可以通過以下命令安裝:
pip install pyecharts
3.2 準備數據
??根據實際需求準備人口遷徙的數據。數據格式如上所示。
3.3 繪制地圖
??使用 pyecharts
的 Geo
模塊來繪制人口遷徙圖。
4. 完整代碼
??以下是完整的代碼示例:
from pyecharts import options as opts
from pyecharts.charts import Geo
from pyecharts.globals import ChartType, SymbolType, ThemeType# 準備數據
data = [("廣州", "上海", 55),("廣州", "北京", 66),("廣州", "杭州", 77),("廣州", "重慶", 88),("河南", "江蘇", 99),("河南", "浙江", 111),("河南", "上海", 121),("河南", "廣東", 131),
]# 創建 Geo 對象
geo = (Geo(init_opts=opts.InitOpts(theme=ThemeType.DARK, width="1000px", height="600px")).add_schema(maptype="china",itemstyle_opts=opts.ItemStyleOpts(color="#1C9048", border_color="#111"),).add("廣東流出人口",[("上海", 55), ("北京", 66), ("杭州", 77), ("重慶", 88)],type_=ChartType.EFFECT_SCATTER,color="#9F2628",).add("廣東流出路徑",[("廣州", "上海"), ("廣州", "北京"), ("廣州", "杭州"), ("廣州", "重慶")],type_=ChartType.LINES,effect_opts=opts.EffectOpts(symbol=SymbolType.ARROW, symbol_size=6, color="#9F2628"),linestyle_opts=opts.LineStyleOpts(curve=0.2),).add("河南流出人口",[("江蘇", 99), ("浙江", 111), ("上海", 121), ("廣東", 131)],type_=ChartType.EFFECT_SCATTER,color="#401183",).add("河南流出路徑",[("河南", "江蘇"), ("河南", "浙江"), ("河南", "上海"), ("河南", "廣東")],type_=ChartType.LINES,effect_opts=opts.EffectOpts(symbol=SymbolType.ARROW, symbol_size=6, color="#401183"),linestyle_opts=opts.LineStyleOpts(curve=0.2),).set_series_opts(label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="人口遷徙圖"),)
)# 渲染圖表到 HTML 文件
geo.render("population_migration_map.html")
4.1 代碼說明
-
數據準備:
data
是一個包含起點城市、終點城市和遷移人數的列表。
-
創建 Geo 對象:
- 使用
Geo
創建一個地理坐標系圖表。 init_opts
設置主題為暗色主題,寬度為1000px,高度為600px。add_schema(maptype="china")
指定地圖類型為“中國”。
- 使用
-
添加數據:
- 使用
add
方法添加數據。 ChartType.EFFECT_SCATTER
表示繪制起點和終點的散點效果。ChartType.LINES
表示繪制遷徙線路。effect_opts
設置遷徙線路的樣式,如符號大小和顏色。linestyle_opts
設置線路的樣式,如曲線程度。
- 使用
-
設置樣式:
itemstyle_opts
設置地圖底圖的樣式。label_opts
設置標簽的顯示狀態,這里設置為不顯示。
-
全局配置:
title_opts
設置標題為“人口遷徙圖”。
-
渲染圖表:
- 使用
render
方法將圖表渲染為一個 HTML 文件,文件名為population_migration_map.html
。
- 使用
5. 運行結果
??運行上述代碼后,會生成一個名為 population_migration_map.html
的文件,你可以用瀏覽器打開這個文件查看生成的人口遷徙圖。圖中會顯示從起點城市到終點城市的人口遷徙線路,線路的粗細和顏色會根據遷移人數的大小變化。
pyecharts遷徙圖
??希望這篇文章對你有幫助!如果你有實際的人口遷徙數據,只需將 data
替換為真實數據即可。