GeoPandas 和 Bokeh 从数据中提取 xs 和 ys - WorldMap
GeoPandas and Bokeh extract xs and ys from data - WorldMap
我在
上找到了这个 post
我需要的基本上是相同的东西,但对于整个世界的地图(从 GeoPandas 中提取 XS 和 ys 并转换为 bokeh 可读格式)。我正在为世界数据同时具有多边形和多边形这一事实而苦苦挣扎。
如果有人能提供帮助,将不胜感激。
谢谢!
好的,所以我解决了它,但它需要改进。如果您有任何改进的想法,请告诉我。我也 运行 遇到运行时错误,这可以通过取消注释某些代码部分(在代码中标记)或降级 bokeh 来解决。我没有尝试降级散景,我只是在某处看到那个答案。
(此外,我以前从未在 SO 上发过帖子,所以我不太确定这一切是如何运作的,所以请保持温和)。
这就是我在评论中提到的使用 pandas GeoJSONDataSource
运行 GeoJSON
的方法。
from bokeh.models import GeoJSONDataSource
from bokeh.plotting import figure, show, output_notebook
import geopandas as gp
output_notebook()
world = gp.read_file(gp.datasets.get_path('naturalearth_lowres'))
geo_source = GeoJSONDataSource(geojson=world.to_json())
p = figure(title='World', tooltips=[('Country', '@name')],
x_range=(-180, 180), y_range=(-90, 90),
x_axis_location=None, y_axis_location=None,
plot_width=1000, plot_height=500
)
p.patches('xs', 'ys', fill_alpha=0.4, fill_color='grey',
line_color='black', line_width=0.5, source=geo_source
)
show(p)
输出
我在
我需要的基本上是相同的东西,但对于整个世界的地图(从 GeoPandas 中提取 XS 和 ys 并转换为 bokeh 可读格式)。我正在为世界数据同时具有多边形和多边形这一事实而苦苦挣扎。
如果有人能提供帮助,将不胜感激。 谢谢!
好的,所以我解决了它,但它需要改进。如果您有任何改进的想法,请告诉我。我也 运行 遇到运行时错误,这可以通过取消注释某些代码部分(在代码中标记)或降级 bokeh 来解决。我没有尝试降级散景,我只是在某处看到那个答案。
(此外,我以前从未在 SO 上发过帖子,所以我不太确定这一切是如何运作的,所以请保持温和)。
这就是我在评论中提到的使用 pandas GeoJSONDataSource
运行 GeoJSON
的方法。
from bokeh.models import GeoJSONDataSource
from bokeh.plotting import figure, show, output_notebook
import geopandas as gp
output_notebook()
world = gp.read_file(gp.datasets.get_path('naturalearth_lowres'))
geo_source = GeoJSONDataSource(geojson=world.to_json())
p = figure(title='World', tooltips=[('Country', '@name')],
x_range=(-180, 180), y_range=(-90, 90),
x_axis_location=None, y_axis_location=None,
plot_width=1000, plot_height=500
)
p.patches('xs', 'ys', fill_alpha=0.4, fill_color='grey',
line_color='black', line_width=0.5, source=geo_source
)
show(p)
输出