用pyecharts实现百度地图动态可视化

鄙人之前搞了一个山东省的大数据比赛,在决赛前夕为了更好地展示就使用了pyecharts实现动态可视化的方法。可视化效果如下视频:

pyecharts百度地图机动车流量可视化

这里需要用到pyecharts里面的BMap()函数,关于BMap()函数的使用方法可以参考以下链接:
pyecharts使用百度地图BMap时显示自定义位置的散点图
基于pyecharts Geo BMAP 的地图可视化

详细代码如下:

from pyecharts import options as opts
from pyecharts.charts import BMap,Geo
from pyecharts.faker import Faker
from pyecharts.commons.utils import JsCode
import numpy as np
from pyecharts.charts import Geo, Timeline
#基于BMap的可视化
df = pd.read_excel('D:\\德州赛决赛\\B\\各卡口各时刻排放量:单位克.xlsx')
sj=list(set(list(df.SJ)))
sj=sorted(sj)
timeline = Timeline(init_opts=opts.InitOpts(width='1600px', height='900px'))
from pyecharts.globals import GeoType
for i in range(len(sj)):
    g=BMap()
    g.add_schema(baidu_ak="sxWNz6lzlr5DVP5eDEe0NWjixvbt7GuQ",
        center=[116.3852, 37.453388],    # 当前视角的中心点,用经纬度表示
        zoom=15,         # 当前视角的缩放比例
        is_roam=True  # 是否开启鼠标缩放和平移漫游
                )
    data2=df[df.SJ==sj[i]]
    data2=data2.sort_values(by='SL',ascending=False)

    #data=data.head(200)
    kakou=list(data2['SBID'])
    liuliang=list(data2['SL'])
    jd=list(data2['LNG'])
    wd=list(data2['LAT'])
    datapairs=[]
    for j in range(len(kakou)):
        g.add_coordinate(kakou[j],jd[j],wd[j])
        datapairs.append((kakou[j],liuliang[j]))
    g.add(
        "bmap",
        [list(z) for z in zip(kakou, liuliang)],
        type_="effectScatter",
        label_opts=opts.LabelOpts(formatter="{b}", position="right", is_show=False),
        itemstyle_opts=opts.ItemStyleOpts(color="purple"),
    )
    pieces = [
        {'max': 100, 'label': '100以下', 'color': '#50A3BA'},
        {'min': 100, 'max': 200, 'label': '100-200', 'color': '#3700A4'},
        {'min': 200, 'max': 300, 'label': '200-300', 'color': '#81AE9F'},
        {'min': 300, 'max': 500, 'label': '300-500', 'color': '#E2C568'},
        {'min': 500, 'max': 1000, 'label': '500-1000', 'color': '#FCF84D'},
        {'min': 1000, 'max': 1500, 'label': '1000-1500', 'color': '#DD0200'},
        {'min': 1500, 'max': 2000, 'label': '1500-2000', 'color': '#DD675E'},
        {'min': 2000, 'label': '2000以上', 'color': '#D94E5D'}  # 可添加
    ]

    g.add('', datapairs, type_=GeoType.EFFECT_SCATTER, symbol_size=2)
    g.set_global_opts(visualmap_opts=opts.VisualMapOpts(is_piecewise=True, pieces=pieces),title_opts=opts.TitleOpts(title="德州市各卡口机动车流量"))

    g.set_series_opts(label_opts=opts.LabelOpts(is_show=False,formatter='{b}',font_size=10,position="top"))


    timeline.add(chart=g,time_point=sj[i])
timeline.add_schema(is_auto_play=True, play_interval=500) 
timeline.render("机动车卡口流量动态可视化.html")

想了解更多可参考这一推送链接
这篇推送,只为了填前面的一个坑——关于之前做的几张动态可视化地图

这里面更多内容后续待我更新,上述推送里点击阅读原文即可获取我动态可视化所用的数据哦~

你可能感兴趣的:(地图可视化,动态可视化,python,echarts,开发语言)