python世界地图代码_[python] 几行代码也能玩转世界地图?
前些天收到某位大佬的求助,說是需要給根據(jù)數(shù)據(jù)給安徽省地市來繪制個圖,用不同顏色來直觀表示數(shù)據(jù)。當時就想到了Python提供一個繪制地圖的庫—— Pyecharts。
Pyecharts是一個用于生成echarts圖表的類庫, 它是百度開源的一個數(shù)據(jù)可視化 JS 庫。Echarts詳情點擊這里。
安裝庫很簡單,大家只要在環(huán)境變量里有添加過Python和其pip工具就OK。
pip install Pyecharts
當然有了該庫后還不夠,需要地圖文件,所以以下幾個需要按需安裝
全球國家地圖:?echarts-countries-pypkg?(1.9MB): 世界地圖和 213 個國家,包括中國地圖
中國省級地圖:?echarts-china-provinces-pypkg?(730KB):23 個省,5 個自治區(qū)
中國市級地圖:?echarts-china-cities-pypkg?(3.8MB):370 個中國城市
中國縣區(qū)級地圖:?echarts-china-counties-pypkg?(4.1MB):2882 個中國縣·區(qū)
中國區(qū)域地圖:?echarts-china-misc-pypkg?(148KB):11 個中國區(qū)域地圖,比如華南、華北。
如上使用pip install 命令完成安裝即可。
基本應(yīng)用::基本地圖繪制
如果我們需要繪制一副安徽省的地圖,并且我們給每個地市一定的數(shù)據(jù),讓地圖在著色上表現(xiàn)出其數(shù)據(jù)的差異,這時,pyecharts是特別方便的一個應(yīng)用。
from pyecharts import Map
city = ['合肥市', '蕪湖市', '宿州市','淮北市','亳州市','阜陽市','蚌埠市','淮南市','滁州市','六安市','馬鞍山市','安慶市','銅陵市','宣城市','池州市',"黃山市"]
area = [11445.1, 6026.05, 9938.77, 2741.39, 8521.23, 10118.17,5950.72, 5532.30, 13515.99, 15450.82, 4049.13, 13537.96, 2922.60, 12312.55,8398.72, 9678.39]
# 繪制地圖
map_1 = Map("安徽省圖例-各地市面積",title_pos='center',width=1200, height=600)
# 地圖詳細信息
map_1.add("", city, area,maptype='安徽', is_visualmap=True, visual_range=[min(area), max(area)], visual_text_color='black', is_map_symbol_show=False, is_label_show=True)
# 輸出到當前文件夾下,保存名為 安徽省地圖,文件類型為html
map_1.render("安徽省地圖.html")
看看文件的結(jié)果如何:
這個簡直很完美好吧,
1.左側(cè)的顏色區(qū)間為漸變色,天空藍——黃——紅,表示的數(shù)據(jù)為由低到高;
2.數(shù)據(jù)的值并非手動分段,而是自動分段,故不一定是我們想要的;
3.鼠標放在某塊地市區(qū)域上時,會高亮顯示,并且會顯示詳細信息,這是一個可選項。
4…還是自己挖掘吧。
既然是由開源JS遷過來的,我們就必須要看看其網(wǎng)頁源代碼。
Woc,這個代碼行數(shù)和右邊的滾動塊根本不是我想要的比例好嗎!!看來期間那段js函數(shù)是一個大工程啊。
從參數(shù)option_xxxx可以看出,這些項基本為我們自己定義:如
title是一個字典,text值為我們標題值,這里用的其他編碼所表示
left值為我們所設(shè)置的 title_pos= ‘center’
top,textStyle,subtextStyle為默認值,我們并未去修改。
挑一些重要的說:
mapType即為我們所想顯示的地圖,如我們選的安徽(不要帶上省市單位,如想顯示合肥市,則填合肥即可)
data是我們所選地市名稱和面積數(shù)據(jù),所以在Python中我們也可以寫成字典形式
VisualMap基本就是地圖顯示的詳細信息了,
Type有兩個值可以選 continuous和piecewise,前者為連續(xù)后者為分段
Min,max是數(shù)據(jù)范圍,即Python中visual_range的參數(shù)
inRange內(nèi)參數(shù)color即顏色范圍,可以選擇多項,當然可以用英文表示,如’skyblue’等
splitNumber是分段,自動分為5段,默認值為5
參數(shù)眾多,以上挑了一些比較重要的。
如果想要編輯這HTML文件,可以使用記事本打開,還有一個比較好用的文檔編輯器notepad++(適用于多種文檔),sublime text,Dreamweaver等文件。
如果想要了解更詳細的參數(shù),訪問這里。
官方文檔。
(PS:文檔是用word編輯,發(fā)表于本人公眾號的,超鏈接一律失效,圖片水印為公眾號名稱,支付寶搜索8282704領(lǐng)紅包)
總結(jié)
以上是生活随笔為你收集整理的python世界地图代码_[python] 几行代码也能玩转世界地图?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑组成部件介绍图解:电脑的硬件组成部分
- 下一篇: android 日期格式 毫秒