python實(shí)現(xiàn)Pyecharts實(shí)現(xiàn)動(dòng)態(tài)地圖(Map、Geo)
一些經(jīng)常畫圖的開(kāi)發(fā)人員大概都用過(guò)echart,不過(guò)小白用Python比較多,學(xué)習(xí)了python下的Pyecharts,發(fā)現(xiàn)這個(gè)包真的很強(qiáng)大。下面是小白對(duì)動(dòng)態(tài)地圖的實(shí)踐案例:
假如有這樣一組數(shù)據(jù),全國(guó)每個(gè)城市的酒店數(shù)(虛擬),那么如何在地圖上展示呢?
1.Python需要安裝Pycharts
當(dāng)安裝完成后需要添加地圖包:
安裝pyecharts后還需要根據(jù)需要安裝城市、省份等地圖包,下面是對(duì)包的整理,大家可以根據(jù)需要下載。
pip install pyechartspip install echarts-countries-pypkgpip install echarts-china-provinces-pypkgpip install echarts-china-cities-pypkgpip install echarts-countries-pypkgpip install echarts-china-provinces-pypkgpip install echarts-china-cities-pypkgpip install echarts-china-counties-pypkgpip install echarts-china-misc-pypkg
2.安裝完成后,畫圖
from pyecharts import Barfrom pyecharts import Map, Geoimport pandas as pd #讀取數(shù)據(jù)inpath = ’D:/Users/traindatas/map_2.csv’ #數(shù)據(jù)路徑data = pd.read_csv(inpath , header = ’infer’) #讀取數(shù)據(jù) #瀏覽數(shù)據(jù)data.head()
數(shù)據(jù)展示如下:這里是展示2019年1到九月每個(gè)月,城市酒店數(shù)的變化情況,每個(gè)月用1號(hào)代表當(dāng)月
由于每個(gè)城市包含9條數(shù)據(jù),因此,就需要用循環(huán)做出9張MAP地圖,來(lái)展示每個(gè)月每個(gè)城市的情況
#取出日期IsDuplicated = data[’effectdate’] list_of_month = list(IsDuplicated.drop_duplicates()) #循環(huán),做出每個(gè)月的分布圖for month in list_of_month: # 城市酒店數(shù) df = data[data[’effectdate’] == month] indexs = list(df[’cityname’]) values = list(df[’masterhotelid’]) geo = Geo('全國(guó)酒店分布', str(month) + '全國(guó)酒店分布', title_color='#fff', title_pos='center', width=1200, height=600, background_color=’#404a59’) # type='effectScatter', is_random=True, effect_scale=5 使點(diǎn)具有發(fā)散性 geo.add('全國(guó)酒店分布', indexs, values, type='effectScatter', is_random=True, effect_scale=5, visual_range=[0, 900],visual_text_color='#fff', symbol_size=15, is_visualmap=True, is_roam=False) #geo.show_config() filepath = ’D:/Users/pythonfeature/map/’ +str(month) + ’_month.html’ geo.render(path=filepath)
這樣就在指定的文件夾下生成了9張圖,我們隨意打開(kāi)一張圖:在本地圖片中,圖中的點(diǎn)是動(dòng)態(tài)的,但是小白不知道html類型的圖片如何上傳,所以就上傳了一個(gè)下載的PNG圖片,大家可以自行嘗試之后觀看動(dòng)圖
下圖就是上面代碼生成的9張圖,文件類型是HTML類型
打開(kāi)其中一張圖看下~
當(dāng)然Pyecharts中的圖形還是很豐富的,之后小白再分享一些其他的圖形
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. vue實(shí)現(xiàn)web在線聊天功能2. JavaScript實(shí)現(xiàn)頁(yè)面動(dòng)態(tài)驗(yàn)證碼的實(shí)現(xiàn)示例3. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis4. Springboot 全局日期格式化處理的實(shí)現(xiàn)5. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)6. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問(wèn)題7. 解決Android Studio 格式化 Format代碼快捷鍵問(wèn)題8. 在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn)9. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼10. Java使用Tesseract-Ocr識(shí)別數(shù)字
