今天咱們來看看如何繪製世界疫情動態地圖。一樣使用PyEcharts進行繪製,還沒看過前幾期使用PyEcharts繪製疫情地圖文章的,能夠經過如下連接查看
8行Python代碼輕鬆繪製新冠疫情地圖
動態新冠疫情地圖Python輕鬆畫
湖北動態新冠疫情地圖Python輕鬆畫
地圖效果以下:
繪製世界疫情動態地圖有個地方須要注意,就是要把國家標籤隱藏起來,不然所有顯示的話,那效果慘不忍睹,大家能夠本身試試。
另外國家名要用英文名,爲止,我還特地去找了一張國家名稱對應表進行匹配處理。
數據是這樣的,指標是新增確診人數
html
長按識別下方二維碼,並關注公衆號
回覆「DTX」獲取案例數據
echarts
有了前面繪圖經驗,咱們就直接上代碼了ide
import pandas from pyecharts.charts import Map from pyecharts import options as opts from pyecharts.charts import Timeline data = pandas.read_excel('C:/Python/xgyq.xlsx',sheet_name='6', index_col='time') #取出國家列表 attr = data.columns.tolist() #統計數據條數 n = len(data.index) #定義每日地圖繪製函數 def map_visualmap(sequence, date) -> Map: c = ( Map() .add(date, sequence, maptype="world") .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) .set_global_opts( title_opts=opts.TitleOpts(title="世界疫情動態地圖"), visualmap_opts=opts.VisualMapOpts(max_=20, range_color=["#FFFFFF","#FFCC00","#CC0000"]# 這裏修改顏色,低、中、高 ), ) ) return c #建立時間軸對象 timeline = Timeline() for i in range(n): #取每日數據 row = data.iloc[i,].tolist() #將數據轉換爲二元的列表 sequence_temp = list(zip(attr,row)) #對日期格式化以便顯示 time = format(data.index[i], "%Y-%m-%d") #建立地圖 map_temp = map_visualmap(sequence_temp,time) #將地圖加入時間軸對象 timeline.add(map_temp,time).add_schema(play_interval=360) # 地圖建立完成後,經過render()方法能夠將地圖渲染爲html timeline.render('世界疫情動態地圖.html')
長按識別下方二維碼,並關注公衆號,回覆「PY」領取1GB Python數據分析資料
1.回覆「PY」領取1GB Python數據分析資料
2.回覆「BG」領取5GB 名企數據分析報告函數