问题标签 [geopandas]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
792 浏览

geopandas - 使用 GeoDataFrame 导入 shapefile 数据

我正在使用 GeoDataFrame 进行数据导入。但有以下问题。实际上,此功能适用于某些 shapefile,但不适用于某些特定 shapefile,我想知道为什么

0 投票
1 回答
757 浏览

geopandas - 菲奥娜读取数据

我在使用 geopandas 读取数据时遇到问题,但根据这篇文章,我试图将 fiona 重新安装到 1.1.6 版本,但似乎错误是由于 fiona 造成的,但它仍然不起作用..

使用 fiona.open('taz.shp') 作为 src 导入 fiona:用于 src 中的功能:打印功能

但是当我编写其他类似的脚本时,它似乎可以工作

0 投票
1 回答
2826 浏览

python - 在 Geopandas / Shapely 中识别独特的多边形分组

假设我有两个不相交的多边形组/“岛屿”(想想两个不相邻县的人口普查区)。我的数据可能如下所示:

在此处输入图像描述

我希望每个岛屿内的多边形采用代表其组的 ID(可以是任意的)。例如,左下角的 3 个多边形的 IslandID = 1,右上角的 3 个多边形的 IslandID=2。

我已经开发出一种方法来做到这一点,但我想知道它是否是最好/最有效的方法。我执行以下操作:

1) 创建一个 GeoDataFrame,其几何形状等于多面体一元联合中的多边形。这给了我两个多边形,每个“岛”一个。

在此处输入图像描述

2) 为每个组创建一个 ID。

3) 将岛屿空间连接到原始多边形,因此每个多边形都有适当的岛屿 id。

这确实是最好/最有效的方法吗?

0 投票
1 回答
868 浏览

geopandas - 在 Python 2.6 上安装 geopandas

这是我之前的问题Geospatial Analytics in Python的延续

我开始了一个新问题,以使这两个问题在逻辑上分开。

我试图在 python 2.6 上安装 geopandas

令人惊讶的是,geopandas 已经由 GeoSeries 安装,它不起作用,它需要一个包“Fiona”。我按照此处提供的说明进行操作

我通过搜索和遵循建议安装了所需的库(包括认为我会得到 .h 文件的开发库),但是我遇到了这两个问题:

https://github.com/Toblerity/Fiona

在 Fiona 上从 git 和 python setup.py install 克隆后,出现错误:

gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE - fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv - fPIC -I/usr/include/python2.6 -c fiona/_geometry.c -o build/temp.linux-x86_64-2.6/fiona/_geometry.o gcc: fiona/_geometry.c: 没有这样的文件或目录

pip install geopandas 给出

任何有关分类问题和安装 geopandas 的帮助将不胜感激

0 投票
1 回答
995 浏览

python - 在 Centos 安装 Fiona

这个问题与我之前的两个问题有关:

Python 中的地理空间分析

在 Python 2.6 上安装 geopandas

我通过升级整个系统让 geopandas 工作。我没有让 Fiona 工作,以下是我尝试时遇到的错误

0 投票
1 回答
2354 浏览

python - GeoPandas 绘图 - 有什么方法可以加快速度?

我正在对一些地理数据运行梯度下降算法。目标是将不同的区域分配给不同的集群以最小化一些目标函数。我正在尝试制作一部短片,展示算法的进展情况。现在我的方法是在每一步绘制地图,然后使用其他一些工具从所有静态图像中制作一个小电影(非常简单)。但是,我有大约 3000 个区域要绘制,并且 plot 命令需要 90 秒或更长时间才能运行,这会杀死我的算法。

有一些明显的捷径:每第 N 次迭代保存一次图像,将所有步骤保存在一个列表中,并在最后制作所有图像(可能是并行的)。目前这一切都很好,但最终我的目标是一些交互式功能,用户可以输入一些参数并实时查看他们的地图收敛。似乎在这种情况下,动态更新地图是最好的。

有任何想法吗?这是基本命令(使用最新的 geopandas 开发版本)

还尝试了类似于以下的内容(下面是缩写版本)。我打开一个图,并在每次迭代中更改并保存它。似乎根本没有加快速度。

更新:查看了使用 matplotlib 在 while 循环中实时绘制的drawow 和其他指针,但 shapefile 似乎太大/笨重而无法实时工作。

0 投票
1 回答
3501 浏览

python - 如何在 Python 中更改等值线图的图例文本?

我使用以下代码获得了一张等值线图:

结果是:

在此处输入图像描述

但是如何将图例的文本更改为如下图所示的文字,而不是数字?

在此处输入图像描述

0 投票
1 回答
5508 浏览

python - 两条线串 Geopandas 的交点

假设我对线串的 GeoDataFrames 有以下内容,其中一个代表道路,其中一个代表等高线。

如果我绘制这些,它们看起来像这样:

在此处输入图像描述

有3条等高线和2条道路。我想找到每条道路上每个点的海拔高度。基本上我想使道路和轮廓相交(这应该给我 12 分)并保留两个地理数据框的属性(道路名称和海拔)。

我可以通过使用两个地理数据框的并集的交集来生成 12 个点:

但是,我现在如何获取这 12 个点中的每一个的道路名称和标高?空间连接的行为不像我预期的那样,只返回 4 个点(所有 12 个点都应该与线文件相交,因为它们是按照定义以这种方式创建的)。

关于我如何做到这一点的任何建议?

编辑:看来问题与如何创建交点有关。如果我对道路和轮廓进行少量缓冲,则交叉口将按预期工作。见下文:

以上是所需的输出,尽管我不确定为什么我必须缓冲线以使它们与从线的交点创建的点相交。

0 投票
1 回答
846 浏览

python - python geopandas TclError:在以下目录中找不到可用的 init.tcl:

尝试使用 geopandas 绘制一些东西,并且还尝试使用 bokeh 进行类似的映射,但遇到了同样的错误,在谷歌搜索上花费了太多时间并且似乎无法修复它。

我在虚拟环境中运行 ipython 笔记本(python 2.7.10)的 Mac OS X 10.10.5 上运行。我已经在系统上安装了 ActiveTLC 8.6.4。我很难过

0 投票
2 回答
7533 浏览

pandas - 合并 geopandas 中的地理数据框(CRS 不匹配)

我正在尝试合并两个地理数据框(想查看每个点所在的多边形)。

以下代码首先给我一个警告(“ CRS does not match!”),然后是一个错误(“ RTreeError: Coordinates must not have minimums more than maximums”)。

那里到底有什么问题?CRS是坐标系吗?如果是这样,为什么它们的加载方式不同?

复制数据链接: Shapefile , GPS 点