佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > python用pyecharts實(shí)現(xiàn)地圖數(shù)據(jù)可視化

python用pyecharts實(shí)現(xiàn)地圖數(shù)據(jù)可視化

熱門標(biāo)簽:呼叫中心市場(chǎng)需求 企業(yè)做大做強(qiáng) 百度AI接口 語(yǔ)音系統(tǒng) 硅谷的囚徒呼叫中心 電話運(yùn)營(yíng)中心 Win7旗艦版 客戶服務(wù)

有的時(shí)候,我們需要對(duì)不同國(guó)家或地區(qū)的某項(xiàng)指標(biāo)進(jìn)行比較,可簡(jiǎn)單通過直方圖加以比較。但直方圖在視覺上并不能很好突出地區(qū)間的差異,因此考慮地理可視化,通過地圖上位置(地理位置)和顏色(顏色深淺代表數(shù)值差異)兩個(gè)元素加以體現(xiàn)。在本文案例中,基于第三方庫(kù)pyecharts,對(duì)中國(guó)各省2010-2019年的GDP進(jìn)行繪制。

我們先來看看最終效果:

關(guān)于繪圖數(shù)據(jù)

基于時(shí)間和截面兩個(gè)維度,可把數(shù)據(jù)分為截面數(shù)據(jù)、時(shí)間序列及面板數(shù)據(jù)。在本文案例中,某一年各省的GDP屬于截面數(shù)據(jù),多年各省的GDP屬于面板數(shù)據(jù)。因此,按照先易后難的原則,先對(duì)某一年各省的GDP進(jìn)行地理可視化,再進(jìn)一步構(gòu)建for循環(huán)對(duì)多年各省的GDP進(jìn)行可視化,形成最終的時(shí)間輪播圖。

數(shù)據(jù)來源:本文案例使用的GDP數(shù)據(jù)來源于國(guó)家統(tǒng)計(jì)局官網(wǎng),可在線下載到本地,保存為csv或excel格式,用pandas中的DataFrame進(jìn)行讀取。

地理可視化

一、全國(guó)各省單年GDP的可視化

在pyecharts中可使用Map類型實(shí)現(xiàn)地理可視化,其原理是通過不同顏色填充以展現(xiàn)不同的數(shù)據(jù),options實(shí)現(xiàn)圖表的調(diào)整及修飾。代碼展示如下:

import pandas as pd
from pyecharts.charts import Map
import pyecharts.options as opts

frame = pd.read_csv('C:\\Users\\dell\\Desktop\\分省年度數(shù)據(jù)2.csv',encoding='GBK')
map = Map()
map.add("我國(guó)地區(qū)的GDP",frame[['地區(qū)','2019年']].values.tolist(),"china")
map.set_global_opts(visualmap_opts=opts.VisualMapOpts(min_=500,max_=12000))
map.render("2019年全國(guó)各地區(qū)GDP.html")

解析:add()來實(shí)現(xiàn)了數(shù)據(jù)的加載,在配置3個(gè)參數(shù)中——第1個(gè)是圖的標(biāo)題,第2個(gè)通過.values.tolist()加載要顯示的數(shù)據(jù),第3個(gè)"china"確保顯示的地圖類型是中國(guó)。有個(gè)細(xì)節(jié)需要注意,Map 使用的中國(guó)各省份需要將全部的省、市、自治區(qū)等去掉。set_global_opts()實(shí)現(xiàn)了用顏色標(biāo)記數(shù)據(jù)的數(shù)值大小,參數(shù)min_和max_分別代表最小值和最大值。render()用于生成并保存圖像。

效果如下:

然而數(shù)據(jù)分布并不平均,可以通過is_piecewise 屬性表述分段自定義不同的顏色區(qū)間:

geo.set_global_opts(visualmap_opts=opts.VisualMapOpts(
    is_piecewise=True,
    pieces=[
        {"min":0,"max":10000,"label":"1~10000","color":"cyan"},
        {"min":10001,"max":20000,"label":"10001~20000","color":"yellow"},
        {"min":20001,"max":50000,"label":"20001~50000","color":"orange"},
        {"min":50001,"max":80000,"label":"50001~80000","color":"coral"},
        {"min":80001,"max":120000,"label":"80001~120000","color":"red"},
    ]   
))

效果如下:

二、全國(guó)各省多年GDP的可視化

由于要繪制2010-2019年的GDP數(shù)據(jù),可以考慮構(gòu)建一個(gè)for循環(huán),通過str(i)+"年"的形式訪問數(shù)據(jù)表格中處于不同列的各年GDP數(shù)據(jù)。繪制輪播圖可考慮調(diào)用Timeline,代碼如下:

import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Map, Timeline

frame = pd.read_csv('C:\\Users\\dell\\Desktop\\分省年度數(shù)據(jù)2.csv',encoding='GBK')
tl = Timeline()
for i in range(2010, 2020):
    map0 = (
        Map()
        .add("省份",frame[['地區(qū)',str(i)+'年']].values.tolist(), "china")
        .set_global_opts(
            title_opts=opts.TitleOpts(title="Map-{}年GDP(億元)".format(i)),
            visualmap_opts=opts.VisualMapOpts(
                is_piecewise=True,
                pieces=[
                    {"min":0,"max":10000,"label":"1~10000","color":"cyan"},
                    {"min":10001,"max":20000,"label":"10001~20000","color":"yellow"},
                    {"min":20001,"max":50000,"label":"20001~50000","color":"orange"},
                    {"min":50001,"max":80000,"label":"50001~80000","color":"coral"},
                    {"min":80001,"max":120000,"label":"80001~12000","color":"red"},
                ]   ),))
    tl.add(map0, "{}年".format(i))
tl.render("2010~2019年全國(guó)各地區(qū)GDP.html")

效果如下:

本案例的實(shí)現(xiàn)并不復(fù)雜,在pyecharts官方的參考案例基礎(chǔ)上稍加改動(dòng)即可實(shí)現(xiàn)。作為一名初學(xué)者,模仿案例是提升功力的重要途徑,通過模仿可以有效吃透代碼要具體實(shí)現(xiàn)的功能,量變到質(zhì)變,就能根據(jù)自己工作和學(xué)習(xí)的需要進(jìn)行靈活應(yīng)用。

以上就是python用pyecharts實(shí)現(xiàn)地圖數(shù)據(jù)可視化的詳細(xì)內(nèi)容,更多關(guān)于python pyecharts實(shí)現(xiàn)地圖數(shù)據(jù)可視化的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • JavaScript數(shù)據(jù)可視化:ECharts制作地圖
  • 一篇文章搞定echarts地圖輪播高亮
  • vue+echarts實(shí)現(xiàn)中國(guó)地圖流動(dòng)效果(步驟詳解)
  • vue+echarts+datav大屏數(shù)據(jù)展示及實(shí)現(xiàn)中國(guó)地圖省市縣下鉆功能
  • vue中echarts引入中國(guó)地圖的案例
  • Javascript Echarts空氣質(zhì)量地圖效果詳解

標(biāo)簽:海南 崇左 長(zhǎng)沙 喀什 安康 山西 濟(jì)南 山西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python用pyecharts實(shí)現(xiàn)地圖數(shù)據(jù)可視化》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    城步| 和静县| 噶尔县| 克东县| 当阳市| 榕江县| 都昌县| 慈溪市| 大安市| 通道| 乡城县| 蒲江县| 奉化市| 会东县| 海兴县| 五华县| 台中市| 杭锦后旗| 邵阳县| 石城县| 堆龙德庆县| 米易县| 乾安县| 望都县| 嘉祥县| 利津县| 怀集县| 中西区| 神池县| 太保市| 洱源县| 若尔盖县| 靖远县| 安康市| 洪泽县| 清镇市| 即墨市| 平利县| 葫芦岛市| 普格县| 密山市|