python-3.x - 散景 GMaps 缩放工具不起作用
问题描述
我刚开始在 Bokeh 0.12.16 中使用 GMap 功能
我正在尝试向 GMap 图添加一些工具,我知道这BoxZoomTool
不兼容,但我似乎无法让其他工具工作?
和HoverTool
工作PanTool
正常SaveTool
。是否没有缩放工具适用于 GMap 图?
我的代码片段如下:
import pandas as pd
import os
os.chdir(r'PATH')
file = 'FILE_NAME.csv'
df = pd.read_csv(file, skipinitialspace=True)
group = df[["ColA", "ColB", "ColC", "ColD"]]
my_source = ColumnDataSource(group)
#my_source.column_names
from bokeh.plotting import figure, output_file, show, gmap
from bokeh.models import GMapOptions, ColumnDataSource
import numpy as np
lat_lims = df.Latitude
#lat_lims
lon_lims = df.Longitude
#lon_lims
map_options = GMapOptions(lat=np.mean(lat_lims), lng=np.mean(lon_lims), zoom=6)
p = gmap(MY_API_KEY, map_options)
p.circle("Longitude",
"Latitude",
source=my_source,
size=5)
from bokeh.models import HoverTool, PanTool, ZoomInTool, ZoomOutTool, SaveTool
p.tools=[PanTool(), ZoomInTool(), ZoomOutTool(), SaveTool()]
from bokeh.models import HoverTool
p.add_tools( HoverTool(tooltips= [("TextA: ", "@ColA"),
("TextB: ", "@ColB")]))
show(p)
解决方案
从 Bokeh 开始0.12.16
,唯一可以与 Bokeh 一起使用的缩放工具GMapPlot
是WheelZoomTool
. 这是因为其他设置的绘图范围是直接的,这与谷歌地图 API 不兼容(谷歌地图严格控制范围,用户不能直接设置)。但是,我认为它可能会制造ZoomIn
和ZoomOut
发挥作用。如果您想提出这个建议并进一步讨论,请打开GitHub 功能请求问题。
推荐阅读
- python - 为什么我的 Python Gmail Bruteforce 没有登录帐户
- linux - apt-get 安装问题
- node.js - 不能使用 jwt.sign,res.headers 不是函数
- django - 无法解析剩余部分:来自 'post.answers_set.all.order_by('-date_posted')' 的 '('-date_posted')'
- mysql - MySQL创建过程出错我不知道为什么
- php - Laravel 7试图获取非对象的属性“id”
- api - 从下拉选择中获取完整信息(Flutter / Dart)
- c++ - Qt Visual Studio 2015 插件编译问题
- numpy - 多特征 CNN 分类模型的 Keras 输入形状不匹配错误
- barcode - 条码的准确性