使用 Python 绘制交互式地图的问题

时间:2021-06-18 11:17:09

标签: python python-3.x data-science gis

我正在学习将 Python 应用于数据科学,并且正在尝试创建我所在城市马德里(西班牙)的交互式地图,以显示上次选举结果。我正在做的就是在这个 GitHub 链接中:

https://github.com/BernardoJoseLlamasVerna/Madrid_Elections_2021

您将看到草图操作并寻找在地图上表示我的数据的最佳方式:

https://github.com/BernardoJoseLlamasVerna/Madrid_Elections_2021/blob/main/Madrid_Elections_2021.ipynb

我正在遵循 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.:如果有人也可以发布具有更好交互式地图的链接,我会很高兴。

1 个答案:

答案 0 :(得分:0)

多亏了 mosc9575,我才能管理一个解决方案......

问题是散景版本(1.3.4);更新后(2.3.2)我可以找出我的地图。现在我必须修正城市名称 XDD。

enter image description here