我正在浏览Bokeh用户指南并且卡在Mapping Geo Data section上。
我几乎复制并粘贴了代码,但由于某种原因,请继续获取以下内容:
代码如下:
from bokeh.io import output_file, show
from bokeh.models import (
GMapPlot, GMapOptions, ColumnDataSource, Circle, Range1d, PanTool, WheelZoomTool, BoxSelectTool
)
map_options = GMapOptions(lat=30.29, lng=-97.73, map_type="roadmap", zoom=11)
plot = GMapPlot(x_range=Range1d(), y_range=Range1d(), map_options=map_options)
plot.title.text = "Austin"
# For GMaps to function, Google requires you obtain and enable an API key:
#
# https://developers.google.com/maps/documentation/javascript/get-api-key
#
# Replace the value below with your personal API key:
plot.api_key = "GOOGLE_API_KEY"
source = ColumnDataSource(
data=dict(
lat=[30.29, 30.20, 30.29],
lon=[-97.70, -97.74, -97.78],
)
)
circle = Circle(x="lon", y="lat", size=15, fill_color="blue", fill_alpha=0.8, line_color=None)
plot.add_glyph(source, circle)
plot.add_tools(PanTool(), WheelZoomTool(), BoxSelectTool())
output_file("gmap_plot.html")
show(plot)
我读到有时会发生这种情况,因为API密钥不正确 - 甚至进入 - 我的绝对是正确的,所以我不确定我做错了什么?
答案 0 :(得分:1)
这几乎是gmaps的API密钥的一个问题。遵循错误消息的建议并检查javascript控制台是否有错误将是有用的。然后你会马上知道问题是什么。
答案 1 :(得分:0)
我无法从文档中获取代码片段,对于0.12.14-0.12.16中的任何版本......无论如何。我得到了以下工作:
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)
show(p)
答案 2 :(得分:0)
我有类似的问题。至少有15个适用于Google MAP的API。
可以通过激活
解决此问题Maps JavaScript API 谷歌