【问题标题】:GeoPandas and Bokeh extract xs and ys from data - WorldMapGeoPandas 和 Bokeh 从数据中提取 xs 和 ys - WorldMap
【发布时间】:2021-01-28 00:39:01
【问题描述】:

我在Geopandas and bokeh extract xs and ys from data找到了这篇文章

我需要的基本上是一样的,但对于整个世界的地图(从 GeoPandas 中提取 XS 和 ys 并转换为散景可读格式)。我正在为世界数据同时具有多边形和多多边形的事实而苦苦挣扎。

如果有人可以提供帮助,将不胜感激。 谢谢!

【问题讨论】:

  • 你有 GeoJSON。 Bokeh 提供了一个GeoJSONDataSource 可以处理这个问题。愿这SO post 对您有所帮助。
  • @mosc9575 是的,我已经安装了所有东西。我解决了它(将发布解决方案)。现在我唯一遇到的是运行时错误。我为此找到了某种解决方案(包含在代码中)。我看到人们还说解决它的一种方法是降级散景。感谢您的回答!

标签: python plot bokeh geopandas


【解决方案1】:

这就是我在评论中提到的使用 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)

输出

【讨论】:

    【解决方案2】:

    好的,所以我解决了它,但它需要抛光。如果您有任何改进的想法,请告诉我。我也遇到了运行时错误,可以通过取消注释某些代码部分(在代码中标记)或通过降级散景来解决。我没有尝试降级散景,我只是在某个地方看到了这个答案。

    (另外,我以前从未在 SO 上发过帖子,所以我不太确定整个事情是如何运作的,所以要温柔)。

    https://github.com/nikosarcevic/GeoMapping

    【讨论】:

    • 嗨尼科。请检查我的答案。希望这也适用于您的机器。我认为这可以简化您的代码。
    • 您好,@mosc9575 - 我刚刚检查过,它有效! TYSM!超级感谢!它看起来肯定比我的解决方案简单。我无法对 json 发表评论,因为有时它感觉就像是巫术 XD
    • 还有一个问题,@mosc9575 - 重新运行单元时是否遇到运行时错误?我经常遇到这种情况,所以我必须重新启动内核,这非常烦人 RuntimeError: Models must beowned only a single document, Selection(id='1060', ...) is already in a doc
    • 没有。我对运行时没有任何问题。我的代码有问题吗?
    • 不,你的运行流畅!我还注意到,当我将代码的所有部分复制到一个单元格中时,我的解决方案没有遇到错误。我正在阅读 csv(我在世界地图上绘制了一些数据)并在单独的单元格中定义了 pandas df 和 source。谁知道。维伦潮湿!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-01
    • 1970-01-01
    • 2017-02-16
    • 1970-01-01
    • 1970-01-01
    • 2021-12-26
    • 1970-01-01
    相关资源
    最近更新 更多