pyecharts根据经纬度画动态散点地图⽤pyecharts1.x版本 import pandas as pd #导⼊数据分析模块 from pyecharts.charts import Geo #导⼊地理信息处理模块 from pyecharts import options as opts #配置
der import make_snapshot #快照
from snapshot_selenium import snapshot
from pyecharts.globals import ChartType, SymbolType #全局配置
from pyecharts.charts import Timeline
from pyecharts.charts import Map
导⼊数据
#导⼊excel表举例
ad_excel('开班.xlsx')
df['开班']= df['开班⽇期'].apply(lambda x:str(x)[:10])
经纬360df.head()
定义地图散点
def map_visualmap(data_pair,date)-> Map:
g=Geo()#地理初始化
g.add_schema(maptype="⼭东")#限定⼭东市范围
for key, value in geo_sight_coord.items():#对地理点循环
g.add_coordinate(key, value[0], value[1])#追加点位置
g.add(date, data_pair, symbol_size=10)#追加项⽬名称和数据
g.set_series_opts(label_opts=opts.LabelOpts(is_show=False),type='scatter')#星散点图scatter
g.set_global_opts( title_opts=opts.TitleOpts(title="⼭东"))#办公项⽬分布图
return g
#创建时间轴对象
geo_sight_coord={df['三级地区'][i].strip():[df['经度'][i], df['纬度'][i]]for i in range(len(df))}#构造位置字典数据
date_list=df['开班'].sort_values().unique()
n=len(date_list)
timeline = Timeline()
for date in date_list:
data=df[df['开班']<=date]
set_index(drop=True)
data_pair=[(data['三级地区'][i].strip(), data['开班班次'][i])for i in range(len(data))]
time = date
#创建地图
map_temp = map_visualmap(data_pair,time)
#将地图加⼊时间轴对象
timeline.add(map_temp,time).add_schema(play_interval=360)
# 地图创建完成后,通过render()⽅法可以将地图渲染为html