echarts map 點擊地圖區域變色_繪制炫酷的地圖,不只是pyecharts.map!

導讀:地圖可視化是一種非常直觀的數據分析結果展現形式,python有很多可視化庫可以實現,pyecharts就是很多python愛好者喜愛的實現地圖可視化方法之一。不可否認,pyecharts繪制的地圖實現方便、圖形美觀而且支持交互,但在面對不同需求時,其實我們還有很多其他手段實現地圖可視化。

dd340a0f0a47b8037a5db197b71d8471.png

01 序

本文主要是介紹了多種實現地圖可視化的方法,并對其繪制方式進行簡單介紹和對比。主要包括以下方式:

  • python之pyecharts

  • 百度之Echarts

  • office之Excel和ppt

  • 商業智能軟件Tableau

02 pyechartspython愛好者實現地圖可視化時的首選庫莫過于pyecharts,是一個用于生成 Echarts 圖表的類庫,實現起來非常簡單,做出的圖表也很美觀。pyecharts 分為 v0.5 和 v1 兩個大版本,v0.5 和 v1 間不兼容,v1 是一個全新的版本。本文案例使用版本1.6。
import?pyecharts
pyecharts.__version__
#'1.6.0'

在制作地理地圖方面,包括三個類,分別是map、Geo和Bmap,其中前兩者是我們常用的地圖可視化類,Bmap是百度地圖的一個接口。

  • Map類生成地圖

使用map類繪制地圖支持世界、國家、省市和區縣四級地圖,使用前需獨立安裝。

from?pyecharts.charts?import?Map
from?pyecharts?import?options?as?opts
regions?=?['上城區','下城區','拱墅區','濱江區','江干區','西湖區','蕭山區','余杭區','臨安市','富陽區','建德市','淳安縣','桐廬縣']
values?=?[94,?98,?76,?89,?65,?64,?56,?59,?45,?23,?22,?22,?21]#隨便輸入的數據
m?=?Map()
m.add("",?zip(regions,?values),?maptype="杭州")
m.set_global_opts(title_opts=opts.TitleOpts(title="杭州各區塊吸引力",?pos_left?=?'center'?),visualmap_opts=opts.VisualMapOpts(max_=100))
m.render(r'hz.html')
V0.5到V1.0以后版本的一個重要特性是支持類方法的鏈式調用:
m?=?(Map()
.add("",?zip(regions,?values),?"杭州")
.set_global_opts(title_opts=opts.TitleOpts(title="杭州各區塊吸引力",?pos_left?=?'center'?),visualmap_opts=opts.VisualMapOpts(max_=100))
.render(r'hz.html'))
Map類常用的方法是
##Map類常用方法,各方法里又支持大量參數進行個性化設置
add()
set_global_opts()
set_series_opts()
render()

2345c2a1864d0d38a714a7b7c7aef681.png

pyecharts生成的杭州市地圖

  • Geo類生成地圖

與Map類似,Geo也可以通過設置maptype參數選擇地圖類型,默認是china,所支持方法與Map類似,具體可詳細參考相關文檔。

from?pyecharts.charts?import?Geo
from?pyecharts.globals?import?GeoType
from?pyecharts?import?options?as?opts
regions?=?['北京','上海','天津','重慶','廣州','深圳','杭州','南京','成都','武漢','西安','鄭州','廈門']
values?=?[94,?98,?76,?89,?65,?64,?56,?59,?45,?23,?22,?22,?21]#隨便輸入的數據
g?=?(Geo()
????????.add_schema(maptype="china")
????????.add("geo",?zip(regions,?values),?type_?=?GeoType.EFFECT_SCATTER)
????????.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
????????.set_global_opts(
????????????visualmap_opts=opts.VisualMapOpts(is_piecewise=True),
????????????title_opts=opts.TitleOpts(title="Geo漣漪圖"))
?????????.render('geo.html')
????)

c891d2d9f6d9fb9ed3422ba4d91d27a2.png

03 Echarts

實際上,pyecharts之所以如此強大,是發揮了python膠水語言的特性得以引入Echarts。Echarts是百度的一個圖表庫,基于JavaScript語言實現,官網及其社區有大量開源的案例作品。站在巨人的肩膀上,本著不重復制造輪子的原則,即便不懂js語言,也可以通過簡單的更改數據和基本設置來繪制精美的可視化地圖。

7028d20db5dabd8c6eba756cd048c6e0.png

基于現有案例,輸入關鍵數據即可繪制可視化地圖

自從pyecharts1.0版本后,其接口函數和0.5版本有很大區別。實際上,比對pyecharts源碼會發現,其參數風格與echarts的js源碼很像。從這個角度說,如果一個python愛好者對pyecharts庫足夠熟悉的話,那么反過來也會很容易上手百度Echarts圖表。

726c684b4574b1822191d57de58d7f8c.gif

Echarts地圖均支持交互

18977d0e850cc8b5e29ca286b6cb6641.gif

注:上述兩個可視化地圖案例均選自Echarts的gallery社區

還有很多其他類似Echarts的可視化平臺,如大眾制圖、圖表秀等,均可在線制作大量圖表,不過一般需要注冊后方可使用,而Echarts則可直接使用。

04 Office

作為軟件屆的翹楚,微軟不可能不占有一席之地;作為數據分析和可視化的通用基礎工具,Excel和PPT也絕不會在地圖可視化方面缺席。所以,如果說用python可視化庫和百度Echarts在線制作地圖可視化還不夠接地氣的話,那么office絕對稱得上是家喻戶曉、人盡可用。

在Excel界面中指定多列數據,其中一列是位置信息(如省份或者城市名),其余表示要可視化的數據,選擇插入選項卡下插入三維地圖功能,即可進入Excel制演示圖界面。

5b176d242541c98de4d4304acf21315c.png

Excel三維地圖制作柱狀圖

然而,以北京各區劃為例,Excel默認情況下還會識別出其他地址:例如北京市朝陽區還有吉林省長春市朝陽區,通州區也出現在江蘇省南通市通州區。

23f3d6679b48937785a47d2fca06b5f8.png

Excel在識別地理位置方面還有些問題

在ppt中制作可視化地圖也非常容易,手段也多種多樣,主要還是依靠添加矢量地圖然后進行區域編輯來實現的。添加矢量地圖的方式有很多,個人選用PA插件下載地圖圖標添加。對于添加的矢量地圖,可以任意對選中地區進行著色,從而體現數據差異。

a45bd009e8078f969a08e5ef90f01aec.png

ppt中制作可視化地圖僅需逐塊著色即可

05 Tableau

談到數據可視化,幾乎避免不了要與BI軟件產生聯系,比如說Tableau。Tableau是專門為制作可視化圖表而存在的,自然少不了地圖可視化。與Excel類似,在Tableau數據源中輸入地理位置信息及相應數據后,可以通過簡單的拖拽和設置實現地圖繪制。最為方便的是,Tableau支持便捷的篩選、標記和分組等功能。不過考慮Tableau的使用普及程度還遠遠不如Office、網頁在線等平臺,所以Tableau可能并不會成為首選。

2f836c858cdb8c9334cfd09946bfe67e.png

與Tableau類似的可用于制作可視化地圖的軟件還有PowerBI、DataFocus等,都可以簡單操作快速上手。

06?對比與總結
  • 可視化地圖是一種常用的可視化展現形式,實現手段也多種多樣

  • python的pyecharts庫是基于百度Echarts庫實現的,常用Map、Geo兩個類制圖,接口豐富、設置多樣,圖表美觀且支持交互

  • 百度Echarts支持在線生成可視化地圖,社區有大量精美案例可供選擇,簡單編輯數據即可

  • office的Excel和PPT均可制作可視化地圖,二者是幾乎人人都會用的辦公軟件,操作簡單、門檻較低,但功能也相對單一

  • Tableau軟件制作可視化地圖也非常方便且功能強大,但使用靈便程度不如前幾種方式

4f376838d8cba3e3ac79cc91524c31fe.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532131.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532131.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532131.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

金蝶kis專業版公網訪問_金蝶KIS云專業版—【賬務處理】進階操作101問

對KIS專業版【賬務處理】模塊日常操作之外的各種問題進行回答,幫助老師們快速進階此模塊的操作,提高軟件的便利性。1.專業版資產負債表如何移動表頁位置?【操作步驟】 1、單擊【報表與分析】-【資產負債表】;2、單擊左上角菜單欄【…

奧鵬東師計算機應用基礎18,免費在線作業答案奧鵬東師計算機應用基礎15秋在線作業1試卷及答案(1)...

奧鵬東師計算機應用基礎15秋在線作業1試卷及答案(1)一、單選題(共25道試題,共62.5分。)1.在Excel 中保存的工作簿默認的文件擴展名是()。A. XLSB. DOCC. DBFD. TXT正確答案:A2.中文Windows 2000的“桌面”是指()。A. 整個屏幕B. 某個窗口2015奧鵬作業答案…

es集群搭建_滴滴Elasticsearch 集群跨版本升級與平臺重構之路

前不久,滴滴ES團隊將維護的30多個ES集群,3500多個ES節點,8PB的數據,從2.3.3跨大版本無縫升級到6.6.1。在對用戶查詢寫入基本零影響和改動的前提下,解決了ES跨大版本協議不兼容、文件格式不兼容、mapping不兼容等難題&a…

電子工程可以報考二建_非工程類專業也能報考二建嗎?

非工程類專業也能報考二建嗎?2020年非工程類專業能考二級建造師的省份匯總整理!2020年二級建造師考試報名公告陸續公布中,目前江西、陜西、江蘇三省公布了報名時間,其他省份報名時間暫時未確定。四川省已經受疫情影響推遲五月的考…

計算機考試中英文打字題,計算機信息技術(五筆及中英文打字測試試題)

計算機信息技術(五筆及中英文打字測試試題) (14頁)本資源提供全文預覽,點擊全文預覽即可全文預覽,如果喜歡文檔就下載吧,查找使用更方便哦!14.9 積分第一章基本知識習題答案一、填空題1. 計算機信息高新技術考試劃分為五、四、三、二、_ 5個等…

pil python 安裝_20行Python代碼給微信頭像戴帽子

作者 | Leauky,北理工碩士在讀,非CS專業的Python愛好者。朋友圈里微信官方要求戴圣誕帽的活動曾經火爆一時,有些會玩的小伙伴都悄咪咪地用美圖秀秀一類的 app 給自己頭像 p 一頂,然后可高興地表示“哎呀好神奇hhhh”,呆…

arcgis 屬性表 匯總_Arcgis中遙感影像地理配準、矢量化與地圖制作

目的:將遙感圖像進行地理配準、矢量化,并且制作地圖。要求:對的遙感圖像進行地理配準;矢量化建筑物、綠地、道路、水體等主要地物要素;對各類地物要素進行符號化設置并對其名稱進行標注;添加指北針、比例尺…

怎么查看計算機的系統內存大小,Windows10系統怎么查看電腦內存大小

很多用戶在升級到windows10系統之后,因為很多界面和操作都跟之前的Windows系統不一樣,所以很多操作都不知道要如何下手,比如想要查看電腦內存大小的時候卻不知道要怎么操作,其實方法很簡單,下面給大家介紹一下Windows1…

java類初始化順序_《To Be a Better Javaer》-- Java 基礎篇 vol.2:面向對象

Java是面向對象的高級編程語言,面向對象的特征如下:面向對象具有抽象、封裝、繼承、多態等特性;面向對象可以將復雜的業務邏輯簡單化,增強代碼復用性;面向對象是一種常見的思想,比較符合人們的思考習慣。面…

計算機開機時間停在上次關機,怎么在電腦開機的時候查看上次關機前的操作

滿意答案wencai242013.09.05采納率:51% 等級:12已幫助:12606人1.看計算機在哪天運行過~運行了多久!(系統安裝在c盤)找到c:\windows\SchedLgU.txt文件 里面有你自這個系統產生以來曾經工作過的時間,包括哪天開了機 開機時間 關機…

php 遞歸實現無限極分類和排序_PHP實現選擇排序

這次說說選擇排序。 選擇排序(Selection sort)是一種簡單直觀的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再從剩余未排序元素中繼續尋找…

idea for循環快捷鍵_IDEA騷技巧,編碼速度至少快一倍

IDEA是目前市場上最好用的IDE,公認的!前幾年eclipse在市場上非常流行,因此大多數人都習慣了eclipse的一些快捷鍵。近年來,隨著IDEA的興起,很多人都放棄了exlipse,進而選擇了IDEA,但是有些人習慣…

從物聯網到 3D 打印:硬件相關的開源項目概覽 | 開源專題 No.52

arendst/Tasmota Stars: 20.4k License: GPL-3.0 Tasmota 是一款為 ESP8266 和 ESP32 設備提供的替代固件,具有易于配置的 webUI、OTA 更新、定時器或規則驅動的自動化功能以及通過 MQTT、HTTP、串口或 KNX 進行完全本地控制。該項目主要特點包括: 支持…

計算機缺少fixos.dll,fix_toolbox.dll

我該如何安裝從金山毒霸下載的DLL文件?一:1、從金山毒霸下載壓縮文件。2、將DLL文件解壓到電腦上的某個地方。3、把該文件跟要求使用它的程序放在同一路徑上。注意32位程序需要使用32位的DLL文件,64位程序需要使用64位的DLL文件。否則會出現0…

helm安裝postgres_Helm 入門介紹 Kubernetes 上的包管理軟件

這篇文章介紹一下云原生應用在 Kubernetes 上安裝時,經常會用到的一個重要工具,Helm。Helm 是 Kubernetes 的包管理軟件。提到包管理軟件,很多人都不陌生。Maven、Gradle、pip、RubyGems 和 npm 都是包管理軟件。作為一個包管理軟件&#xff…

flutter 分割線_Flutter 底部彈框 showModalBottomSheet 使用Demo

題記—— 執劍天涯,從你的點滴積累開始,所及之處,必精益求精。Flutter是谷歌推出的最新的移動開發框架。【x1】微信公眾號的每日提醒 隨時隨記 每日積累 隨心而過 文章底部掃碼關注【x2】各種系列的視頻教程 免費開源 關注 你不會迷路【x3】系…

python迭代器和for循環區別_python迭代器和for循環區別

迭代器(iterator):迭代器對象必須同時實現__iter__和__next__方法才是迭代器。對于迭代器來說,__iter__ 返回的是它自身 self,__next__ 則是返回迭代器中的下一個值,最后沒有元素時,拋出異常(異常可以被開發者看到)。1.迭代器一定是可迭代對象…

python中代理模式分為幾種_通俗 Python 設計模式——代理模式

今天來說一說代理模式。 代理模式顧名思義,是對資源進行代理訪問的一種模式,這里的資源是泛指在程序中會使用到的數據、操作、過程、對象等等。當然,針對不同的資源,代理進行的操作不盡相同,根據前人的總結&#xff0c…

layer文件ajax上傳,layer彈出層數據傳輸到content里面

在項目中使用layer彈出層的時候,遇到一個問題,就是利用ajax請求后臺數據成功時,調用layer彈出層(iframe),如何把數據傳到iframe里面去?經過百度,發現,使用js把數據拼接起來,然后在su…

清理offset_關于 kafka 日志清理策略的問題

現象:搭建了一個 kafka 服務, 使用 kafka-python 包正常生產數據, 但是 kafka 過五分鐘就把我的 topic 刪除掉. 但是配置 log 的已經配置了, 我認為 kafka 不應該刪除我的 topic 歷史數據.關于 log 清理的配置文件:############################# Log Flush Policy …