使用bokeh在地图顶部进行绘制 [英] Using bokeh to plot on top of a map
本文介绍了使用bokeh在地图顶部进行绘制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我正在尝试使用bokeh来绘制一组地理点(准确地说是学校位置)。我可以用经纬度绘制它们,但如何将这些点覆盖在实际地图上?有没有办法将bokeh与谷歌地图或其他东西集成在一起?
谢谢
推荐答案
我知道这个帖子很旧,但我在其他地方找不到明确的答案,所以希望这能有所帮助。
from bokeh.sampledata import us_states
from bokeh.plotting import *
us_states = us_states.data.copy()
del us_states["HI"]
del us_states["AK"]
# separate latitude and longitude points for the borders
# of the states.
state_xs = [us_states[code]["lons"] for code in us_states]
state_ys = [us_states[code]["lats"] for code in us_states]
# init figure
p = figure(title="Plotting Points Example: The 5 Largest Cities in Texas",
toolbar_location="left", plot_width=1100, plot_height=700)
# Draw state lines
p.patches(state_xs, state_ys, fill_alpha=0.0,
line_color="#884444", line_width=1.5)
# Latitude and Longitude of 5 Cities
# ------------------------------------
# Austin, TX -------30.26° N, 97.74° W
# Dallas, TX -------32.77° N, 96.79° W
# Fort Worth, TX ---32.75° N, 97.33° W
# Houston, TX ------29.76° N, 95.36° W
# San Antonio, TX --29.42° N, 98.49° W
# Now group these values together into a lists of x (longitude) and y (latitude)
x = [-97.7431, -96.79, -97.33, -95.36, -98.49]
y = [30.26, 32.77, 32.75, 29.76, 29.42]
# The scatter markers
p.circle(x, y, size=8, color='navy', alpha=1)
# output to static HTML file
output_file("texas.html")
# show results
show(p)
这样的绘图点在Bokeh中称为"散布标记"。有关详细信息,请see here。
这篇关于使用bokeh在地图顶部进行绘制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文