如何将Pyecharts绘制的 "地图" 展示在百度地图中?

2023-05-16


人生苦短,快学Python!

Pyecharts绘图的确很棒,尤其是地图,那么将你的数据指标,展示在百度地图中,有时怎么样的一种感觉?

其实Pyecharts绘制 "地图" ,并展示在百度地图中的原理很简单,就是使用BMap()类,调用百度地图的数据。

而调用百度地图的数据,首先需要获取一个叫做ak的东西。

详解如何获取百度地图ak

其实百度地图开放平台有很多好用的功能,供我们去调用,但是都需要获取一个叫做ak的东西。那么,你知道如何获取它吗?

下面来看一个详细的步骤吧!

① 先注册一个百度地图开放平台的账号,如果你是第一次使用;

看这里:https://lbsyun.baidu.com/

② 通过下方这个地址创建一个应用;

看这里:https://lbsyun.baidu.com/apiconsole/key

打开上述网址后,大致界面是这样的:

点击上方的创建应用,注意下方有几点信息需要填写:应用名称应用类型Referer名单。如果你不知道什么意思,照着填写就行啦!

最后点击文末的提交按钮即可,最终界面如下:

看到图中的ak了吗?这就是我们一直想要获取的东西。

将 "地图" 展示在百度地图中

有了上述的ak,剩下的就是写代码,很简单。

from pyecharts import options as opts
from pyecharts.charts import BMap

provinces = ["广东","北京","上海","新疆","湖北","浙江","西藏"]
map_values = [11,21,31,41,39,29,20]

ak = "你的ak"

bmap = BMap()
bmap.add_schema(ak,center=[115.97, 29.71])
bmap.add("bmap",[list(z) for z in zip(provinces,map_values)],label_opts = opts.LabelOpts(formatter="b"))
bmap.set_global_opts(title_opts=opts.TitleOpts(title="Pyecharts+百度地图"))

bmap.render_notebook()

最终效果如下:

上述代码中,有一个重要的函数:add_schema()函数,里面一共有5个参数。第一个就是你获取的ak,还有一个center参数,表示当前视角的中心点,用经纬度表示。

def add_schema(
    # 百度地图开发应用 appkey,请使用到百度地图的开发者自行到百度地图开发者中心
    # 注册百度 ak。
    baidu_ak: str,

    # 当前视角的中心点,用经纬度表示
    center: Optional[Sequence] = None,

    # 当前视角的缩放比例。
    zoom: Optional[Numeric] = None,

    # 是否开启鼠标缩放和平移漫游。
    is_roam: bool = True,

    # 地图样式配置项
    map_style: Optional[dict] = None,
)

本文就大致讲述到这里,如果你想知道BMap()类的更多细节,可以参考下方网站。

https://pyecharts.org/#/zh-cn/geography_charts?id=bmap%ef%bc%9a%e7%99%be%e5%ba%a6%e5%9c%b0%e5%9b%be

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将Pyecharts绘制的 "地图" 展示在百度地图中? 的相关文章

随机推荐