
在數(shù)據(jù)分析中,地圖是一種非常直觀的可視化工具,能夠幫助我們更好地理解數(shù)據(jù)在地理空間上的分布情況。無論是展示銷售數(shù)據(jù)、人口分布、還是疫情傳播,地圖都能提供一目了然的信息。本文將詳細(xì)介紹如何使用Pyecharts繪制地圖,適合數(shù)據(jù)分析小白入門。
地圖在數(shù)據(jù)分析中的應(yīng)用非常廣泛,以下是一些常見的應(yīng)用場景:
Pyecharts是一個基于Echarts的Python可視化庫,能夠輕松生成各種精美的圖表。Echarts是百度開源的一個數(shù)據(jù)可視化工具,支持多種圖表類型,包括折線圖、柱狀圖、餅圖、地圖等。Pyecharts使得在Python中使用Echarts變得非常簡單。
在開始之前,我們需要先安裝Pyecharts??梢酝ㄟ^以下命令安裝:
pip install pyecharts
此外,為了繪制地圖,我們還需要安裝一些地圖數(shù)據(jù)包:
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg
pip install echarts-china-misc-pypkg
首先,我們需要導(dǎo)入Pyecharts中繪制地圖所需的模塊:
from pyecharts import options as opts
from pyecharts.charts import Map
地圖數(shù)據(jù)通常是一個包含地區(qū)名稱和對應(yīng)數(shù)值的列表。例如:
data = [("北京市", 100), ("上海市", 200), ("廣東省", 300), ("四川省", 400), ("陜西省", 500)]
接下來,我們創(chuàng)建一個地圖對象,并設(shè)置地圖類型為“china”:
map_chart = Map()
map_chart.add("示例地圖", data, "china"
,zoom=1.5 # 設(shè)置縮放
,center=[100, 36] # 設(shè)置默認(rèn)中心位置
,is_roam=False # 禁用縮放 拖拽
)
map_chart.render_notebook()
為了讓地圖更加美觀,我們可以設(shè)置一些全局配置,例如標(biāo)題、視覺映射等:
map_chart.set_global_opts(
title_opts=opts.TitleOpts(title="中國地圖示例"),
visualmap_opts=opts.VisualMapOpts(max_=500)
)
map_chart.render_notebook()
最后,我們還可以將地圖渲染為HTML文件:
map_chart.render("china_map.html")
運行上述代碼后,會在當(dāng)前目錄下生成一個名為china_map.html的文件。打開這個文件,你就可以看到一個交互式的中國地圖,鼠標(biāo)懸停在各個省份上時,會顯示對應(yīng)的數(shù)值。
為了讓地圖更加精美,我們可以從以下幾個方面進行優(yōu)化:
通過設(shè)置visualmap_opts中的is_piecewise=True,我們可以使用分段顏色來展示數(shù)據(jù):
map_chart.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
is_piecewise=True,
pieces=[
{"min": 0, "max": 100, "label": "0-100", "color": "#FFE4E1"},
{"min": 101, "max": 200, "label": "101-200", "color": "#FF7F50"},
{"min": 201, "max": 300, "label": "201-300", "color": "#FF4500"},
{"min": 301, "max": 400, "label": "301-400", "color": "#FF0000"},
{"min": 401, "max": 500, "label": "401-500", "color": "#8B0000"},
]
)
)
Pyecharts還支持3D地圖,可以通過Map3D圖表來啟用:
from pyecharts.charts import Map3D
example_data = [
[[119.107078, 36.70925, 1000], [116.587245, 35.415393, 1000]],
[[117.000923, 36.675807], [120.355173, 36.082982]],
[[118.047648, 36.814939], [118.66471, 37.434564]],
[[121.391382, 37.539297], [119.107078, 36.70925]],
[[116.587245, 35.415393], [122.116394, 37.509691]],
[[119.461208, 35.428588], [118.326443, 35.065282]],
[[116.307428, 37.453968], [115.469381, 35.246531]],
]
(Map3D()
.add_schema(
maptype="山東",
itemstyle_opts=opts.ItemStyleOpts(
color="rgb(5,101,123)",
opacity=1,
border_width=0.8,
border_color="rgb(62,215,213)",
),
light_opts=opts.Map3DLightOpts(
main_color="#fff",
main_intensity=1.2,
is_main_shadow=False,
main_alpha=55,
main_beta=10,
ambient_intensity=0.3,
),
view_control_opts=opts.Map3DViewControlOpts(center=[-10, 0, 10]),
post_effect_opts=opts.Map3DPostEffectOpts(is_enable=False),
)
.add(
series_name="",
data_pair=example_data,
type_=ChartType.LINES3D,
effect=opts.Lines3DEffectOpts(
is_show=True,
period=4,
trail_width=3,
trail_length=0.5,
trail_color="#f00",
trail_opacity=1,
),
linestyle_opts=opts.LineStyleOpts(is_show=False, color="#fff", opacity=0),
)
.set_global_opts(title_opts=opts.TitleOpts(title="Map3D-Lines3D"))
.render("map3d_with_lines3d.html")
)
通過設(shè)置map_style,我們可以自定義地圖的樣式,例如背景顏色、邊界顏色等:
map_chart.set_series_opts(
label_opts=opts.LabelOpts(is_show=False),
itemstyle_opts=opts.ItemStyleOpts(color="blue", border_color="black",area_color="green")
)
數(shù)據(jù)可視化是數(shù)據(jù)分析師需要掌握的重要技能,也是CDA數(shù)據(jù)分析師一級的重要考點,如果你想實操一下自己的可視化技能。
相信你已經(jīng)掌握了如何使用Pyecharts繪制地圖的基本方法。地圖作為一種強大的數(shù)據(jù)可視化工具,能夠幫助我們更好地理解數(shù)據(jù)在地理空間上的分布情況。通過不斷優(yōu)化地圖的樣式和交互效果,我們可以讓數(shù)據(jù)展示更加生動和直觀。
希望這篇文章能夠幫助你在數(shù)據(jù)分析的道路上更進一步!如果你有任何問題或建議,歡迎在評論區(qū)留言討論。
隨著各行各業(yè)進行數(shù)字化轉(zhuǎn)型,數(shù)據(jù)分析能力已經(jīng)成了職場的剛需能力,這也是這兩年CDA數(shù)據(jù)分析師大火的原因。和領(lǐng)導(dǎo)提建議再說“我感覺”“我覺得”,自己都覺得心虛,如果說“數(shù)據(jù)分析發(fā)現(xiàn)……”,肯定更有說服力。想在職場精進一步還是要學(xué)習(xí)數(shù)據(jù)分析的,統(tǒng)計學(xué)、概率論、商業(yè)模型、SQL,Python還是要會一些,能讓你工作效率提升不少。備考CDA數(shù)據(jù)分析師的過程就是個自我提升的過程。
CDA 考試官方報名入口:https://www.cdaglobal.com/pinggu.html
推薦學(xué)習(xí):https://edu.cda.cn/goods/show/3243?targetId=5333&preview=0
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗與 t 檢驗:差異、適用場景與實踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗是驗證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實踐指南 在 Python 進行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗 ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10