以河北省11个地市的地理路径图为例。
如获取目标地理位点的经纬度信息,可利用百度地图拾取坐标系统获取:拾取坐标系统
import pandas as pd
from pyecharts.charts import Geo
from pyecharts.globals import ChartType, SymbolType
from pyecharts import options as opts
dfs=pd.read_excel(excel文件路径,sheet_name=None)
df1=dfs["地理位置"]
df2=dfs["路径图"]
# 设置画布大小
geo = Geo(opts.InitOpts(
width= "1536px",
height = "824px"))
# 录入标记点地理位置信息
for i in range(df1.shape[0]):
geo.add_coordinate(name=df1['name'][i],longitude=df1["jd"][i],latitude=df1['wd'][i])
data=zip(df1['name'],df1['value'])
data2=zip(df2['start'],df2['end'])
geo.add_schema(maptype='河北',
itemstyle_opts=opts.ItemStyleOpts(color="white", border_color="#111"), # 设置地图背景颜色
is_roam=True,
label_opts=opts.LabelOpts(is_show=False)) # 设置默认地图标签为不显示
geo.add(
"",
data,
type_=ChartType.SCATTER, # 设置散点图,显示标记点
symbol_size=10, # 设置标记的大小
label_opts=opts.LabelOpts(is_show=True,position="right",formatter="{b}") # 开启系列标签
)
geo.add(
"品种考察路径图",
data2,
type_=ChartType.LINES,
effect_opts=opts.EffectOpts(
is_show=False, # 关闭涟漪特效,若想从动态显示,则设置为True
symbol=SymbolType.ARROW,
symbol_size=6,
color="blue" ,
trail_length=0.2 # 特效尾迹的长度。取从 0 到 1 的值,数值越大尾迹越长。默认值 0.2
),
linestyle_opts=opts.LineStyleOpts(
curve=0.3, # 设置线段弧度
color='red' #设置线段颜色
),
label_opts=opts.LabelOpts(is_show=False) # 关闭系列标签
)
geo.render('路径图.html')
展示结果如下: