【发布时间】:2021-06-18 11:17:09
【问题描述】:
我正在学习将 Python 应用于数据科学,并且正在尝试创建我所在城市马德里(西班牙)的交互式地图,以显示上次选举结果。我所做的只是在这个 GitHub 链接中:
https://github.com/BernardoJoseLlamasVerna/Madrid_Elections_2021
您将看到草稿操作并寻找在地图上表示我的数据的最佳方式:
我正在关注在 Internet 上找到的有关威斯康星州选举的示例,并完美地修复了我想要对我的数据执行的操作。我已下载并存储在我的仓库中,以向您展示我正在尝试的内容:
https://github.com/BernardoJoseLlamasVerna/Madrid_Elections_2021/blob/main/maps.ipynb
我尝试对我的数据执行相同的操作,但没有出现任何内容(甚至是错误)。代码如下:
from bokeh.io import output_notebook
from bokeh.plotting import figure, ColumnDataSource
from bokeh.io import output_notebook, show, output_file
from bokeh.plotting import figure
from bokeh.models import GeoJSONDataSource, LinearColorMapper, ColorBar, HoverTool
from bokeh.palettes import brewer
output_notebook()
import json
# res_w_states["clinton_share"] = res_w_states["clinton"] / res_w_states["total"]
#Convert data to geojson for bokeh
wi_geojson=GeoJSONDataSource(geojson=data.to_json())
color_mapper = LinearColorMapper(palette = brewer['RdBu'][10], low = 0, high = 1)
color_bar = ColorBar(color_mapper=color_mapper, label_standoff=8,width = 500, height = 20,
border_line_color=None,location = (0,0), orientation = 'horizontal')
hover = HoverTool(tooltips = [ ('Municipio','@Municipio'),('P.P.', '@P.P.'),
('P.S.O.E.','@P.S.O.E.'),
('Votos Totales','@Votos Totales')])
p = figure(title="Elecciones Madrid 2021", tools=[hover])
p.patches("xs","ys",source=wi_geojson,
fill_color = {'field' :'P.P.', 'transform' : color_mapper})
p.add_layout(color_bar, 'below')
show(p)
我一直在分析 wi_geojson 比较我的和我复制的,它们似乎遵循相同的结构。
**问题:**任何人都可以提示我的代码、数据等有什么问题?
感谢您的帮助。
P.D.:如果有人也可以发布具有更好交互式地图的链接,我会很高兴。
【问题讨论】:
-
如果您没有收到错误消息,我可能是您的代码正在运行,但输出已损坏。为确保散景正常工作,请将其中一个examples 复制到您的笔记本中。他们应该工作。如果不确定你有最新版本的散景。如果您遇到任何错误,请使用回溯更新您的帖子。
-
我使用了您在 bokeh 2.3.2 和我自己的地理资源中使用的代码。它运作良好。所以问题不在这部分。
-
感谢您回答我的问题 :) 我看到我有以下版本“BokehJS 1.3.4 成功加载。”。我正在尝试更新我的 Bokeh 版本并查看它是否有效(我不知道为什么我的第一次尝试没有成功)。我很快就会回信。再次感谢您。
标签: python python-3.x data-science gis