Pyecharts - 動態地圖 geo()/ map() - 安裝與用法詳解

目錄

安裝Pyecharts

安裝對應的地圖拓展:

準備數據

使用 pyecharts 模塊中的 Geo 函數:

使用 pyecharts 模塊中的 map 函數:


把一些地域性比較明顯的數據顯示在一張地圖上,遠比給別人一個 Excel 文件好得多。

Matplotlib 中也有畫地圖的函數,但是是靜態圖,因此這裏主要講 Pyecharts 模塊中的畫圖功能。

安裝Pyecharts

方法一:pip install ...

方法二:conda install -c anaconda pyecharts

方法三:下載模塊--安裝

  1. https://pypi.org/project/pyecharts/0.1.9.4/#files下載模塊;
  2. 將模塊放進 xx 路徑中,比如(C:\ProgramData\Anaconda3\Scripts);
  3. 打開cmd 進入 xx 路徑中,(cd C:\ProgramData\Anaconda3\Scripts);
  4. 安裝,pip install pyecharts-0.1.9.4-py2.py3-none-any.whl;

安裝對應的地圖拓展:

$ 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
$ pip install echarts-united-kingdom-pypkg

準備數據

數據大概是下表這樣的,一共110條數據。

Country Province City Score Province_1 mean_score
China 上海 上海 98 安徽 45
China 北京 北京 96 北京 96
China 廣西 崇左 15 福建 63
China 內蒙古 興安盟 94 甘肅 23

使用 pyecharts 模塊中的 Geo 函數:

Geo 地理座標系組件用於地圖的繪製,支持在地理座標系上繪製散點圖,線集。

geo.add(name, attr, value, type="scatter", maptype='china', coordinate_region='中國', symbol_size=12, border_color="#111", geo_normal_color="#323c48", geo_emphasis_color="#2a333d", geo_cities_coords=None, is_roam=True, **kwargs)

常用參數說明:

參數 接收值 說明
name str 圖例名稱
attr list 屬性名稱
value list 屬性所對應的值
type str 圖例類型,有'scatter','effectScatter','heatmap'可選。默認爲'scatter'
maptype str 地圖類型
coordinate_region str 城市座標所屬國家
symbol_size int 標記圖形大小。默認爲12
border_color str 地圖邊界顏色。默認爲'#111'
geo_normal_color str 正常狀態下地圖區域的顏色。默認爲'#323c48'
geo_emphasis_color str 高亮狀態下地圖區域的顏色。默認爲'#2a333d'
geo_cities_coords dict 用戶自定義地區經緯度,類似如{'阿城':[126.58,45.32],}這樣的字典。
is_roam bool 是否開啓鼠標縮放和平移漫遊。'scale'縮放、'move'平移、'True'都開啓;默認爲True。

Geo 函數的使用:

import pandas as pd
from pyecharts import Geo

#讀取數據
datafile = u'D:\\pythondata\\travel\\travel_data.xlsx'
data = pd.read_excel(datafile)
attr = data['City']
value = data['Score']

geo = Geo("♡♡♡  往後餘生,踏遍山河  ♡♡♡", title_color="#2E2E2E",
          title_text_size=24,title_top=20,title_pos="center", width=1300,height=600, 
          background_color='#F6CEF5')
geo.add("", attr, value, type="effectScatter", is_random=True, visual_range=[0, 100], 
        maptype='china',visual_text_color="#FF0000", geo_normal_color="#6E6E6E",geo_emphasis_color='#F5D0A9',
        symbol_size=8, effect_scale=5, is_visualmap=True)

geo.render(path=u'D:\\pythondata\\travel\\往後餘生.html')#生成html文件

沒有報錯就是運行成功了,去 path 路徑中,雙擊在默認瀏覽器中打開 html 文件,:

 

使用 pyecharts 模塊中的 map 函數:

map 函數 地圖主要用於地理區域數據的可視化。

map.add(name, attr, value, maptype='china', is_roam=True, is_map_symbol_show=True, **kwargs)

map 函數的使用:

import pandas as pd
from pyecharts import Map
datafile = u'D:\\pythondata\\travel\\travel_data.xlsx'
data = pd.read_excel(datafile)
attr = data['Province_1']
value = data['mean_score']
map = Map("♡♡♡  往後餘生,踏遍山河", title_color="#2E2E2E",
          title_text_size=24,title_top=20,title_pos="center", width=1300,height=600, 
          background_color='#F6CEF5')
map.add("", attr, value, type="effectScatter", is_random=True, visual_range=[0, 100], 
        maptype='china', geo_emphasis_color='#F5D0A9',visual_text_color="#6E6E6E",
         is_visualmap=True, is_map_symbol_show=False)
map.render(path=u'D:\\pythondata\\travel\\往後餘生_map.html')

沒有報錯就是運行成功了,去 path 路徑中,雙擊在默認瀏覽器中打開 html 文件,:

 

Pyecharts 說明:http://pyecharts.org/#/zh-cn/charts_base?id=map%EF%BC%88%E5%9C%B0%E5%9B%BE%EF%BC%89

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章