问题标签 [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 投票
1 回答
2841 浏览

python - Geopandas 空间连接 - 无法导入 geopandas.tools

我目前结合使用 Pandas 和 ArcPy 在 Python 中进行 GIS 工作。我最近听说过 Geopandas,并有兴趣学习将其用作 ArcPy 的替代品,用于基本地理处理操作(多边形的空间连接点、相交多边形等)。

我已经安装了 Geopandas 及其依赖项(gdal、shapely、fiona 和 pyproj)。

我找到了一个关于空间连接的 Geopandas 教程(http://nbviewer.ipython.org/github/geopandas/geopandas/blob/master/examples/spatial_joins.ipynb),我一直在尝试在“两个空间连接地理数据帧”。

前 4 行导入必要的模块:

其中 3 行成功运行,但第 4 行没有。我收到以下导入错误:“ImportError:没有名为工具的模块”

关于出了什么问题的任何建议?安装依赖项会出错吗?

谢谢您的帮助!

0 投票
1 回答
2436 浏览

python - Pandas 和 GeoPandas 索引和切片

我正在使用 GeoPandas 和 Pandas。我有一个,比如说,300,000 行 Dataframe,df,有 4 列 + 索引列。

然而,唯一的 id 只是少数(~200)

我想为每个(纬度,经度)组合生成一个 shapely.geometry.point.Point 对象,类似于此处显示的内容:http: //nbviewer.ipython.org/gist/kjordahl/7129098 (参见单元格#5),它循环遍历数据框的所有行;但是对于这么大的数据集,我想将循环限制为更少的唯一 ID。

因此,对于给定的 id 值,idvalue(即第一行的 2009 年)创建 GeoSeries,并将其直接分配给具有 id==idvalue 的所有行

我的代码如下所示:

但是事情不起作用 - 几何字段没有改变 - 我认为是因为 sc_start 的索引与 df 的索引不匹配。

我该如何解决这个问题?我应该坚持整个df的循环吗?

0 投票
3 回答
24793 浏览

python - 使用 Geopandas 计算到最近要素的距离

我正在寻找使用 Geopandas / Shapely来做相当于 ArcPy生成近邻表的操作。我对 Geopandas 和 Shapely 非常陌生,并且开发了一种有效的方法,但我想知道是否有更有效的方法来做到这一点。

我有两个点文件数据集 - 人口普查块质心和餐馆。我正在寻找,对于每个人口普查块质心,到它最近的餐厅的距离。在同一家餐厅是多个街区最近的餐厅方面没有限制。

这对我来说变得有点复杂的原因是Geopandas 距离函数计算元素,基于索引匹配。因此,我的一般方法是将餐厅文件转换为多点文件,然后将块文件的索引设置为所有相同的值。然后所有的块质心和餐馆都有相同的索引值。

现在阅读 Block Centroid 和 Restaurant Shapefile:

由于 Geopandas 距离函数按元素计算距离,因此我将 Restaurant GeoSeries 转换为 MultiPoint GeoSeries:

然后我将块的索引设置为等于 0(与餐厅多点的值相同)作为按元素计算的解决方法。

最后,我使用 Geopandas 距离函数计算每个 Block 质心到最近餐厅的距离。

请就如何改进这方面的任何方面提供任何建议。我不喜欢使用 Geopandas 或 Shapely,但我希望学习 ArcPy 的替代方法。

谢谢您的帮助!

0 投票
1 回答
76 浏览

macos - 循环依赖问题 - Python

我是 Python 的新手,我有一个我认为是由于循环依赖引起的问题,但我一直无法解决它。

如何确定循环依赖发生的位置,以及如何解决此错误(请在下面找到终端输出):(如果有帮助,我使用 OsX Yosemite)

谢谢!

0 投票
1 回答
875 浏览

python - Python 3.4:使用 unstack 和 mplleaflet 在动态地图上显示等高线图

我在将等高线图显示在 mplleaflet 地图上时遇到问题。我相当肯定这是因为我不确定如何告诉 mplleaflet 在地图上将等高线图定位在哪里。所以,问题是如何做到这一点。

下面我根据此处找到的代码构建了以下简单示例: https ://github.com/jwass/mplleaflet/blob/master/examples/contour.py 。

虽然该示例的作者已经确定了他的坐标参考系,但我一直无法这样做。例子:

现在,毫不奇怪,当我执行命令时:

一张空白的世界地图出现了——我的等高线图无处可寻。当然,这很可能是因为 mycrs的定义不正确。有谁知道如何去做,甚至弄清楚如何在 python 中设置参数。我还可以补充一点,实际上没有关于如何执行此操作的 Python 文档。

最好的,

马特

ps 我在 Windows 7 中运行 Python 3.4,我也无法在https://github.com/jwass/mplleaflet/blob/master/examples/contour.py上获得示例。

0 投票
2 回答
8099 浏览

python - 来自 Geopandas GeoDataFame 的 Choropleth 地图

我正在尝试从 Geopandas GeoDataFrame 中的多边形制作等值线图。我想通过 GeoDataFrame 列之一中的值的分位数来符号化多边形。我试图找出不同的选择,看看最适合我的需求。对此的任何建议将不胜感激。

看来 Geopandas 确实有能力做到这一点:http: //nbviewer.ipython.org/github/geopandas/geopandas/blob/master/examples/choropleths.ipynb

这很有效,尽管我找不到太多文档。我希望能够添加一个显示分位数截止值的图例,但似乎 Geopandas 图目前仅允许基于分类数据的图例。有没有人可以解决这个问题?

此外,我希望能够调整多边形轮廓宽度。这可能吗?

作为一个替代选项,我一直在使用 matplotlib 中的多边形补丁。这似乎涉及更多,但似乎确实提供了更多自定义选项。如果有必要沿着这条路线走下去以建立一个传奇,我可以跟进另一个问题,并将包括我到目前为止的代码。

谢谢您的帮助。

0 投票
1 回答
1773 浏览

python-2.7 - 更改 geopandas 中的单个补丁颜色

使用这张纽约市地图,我想将曼哈顿更改为亮蓝色。但是当我改变曼哈顿的个别补丁颜色时,所有其他补丁颜色也会改变。这出乎我的意料。

你如何改变一个单独的补丁的颜色?

NYBB输出图

0 投票
1 回答
1358 浏览

python - GeoPandas 绘图问题

使用 GeoPandas 进行绘图时,我正在为争论而苦苦挣扎。由于某些我不明白的原因,我收到此错误

当尝试使用“facecolor”、“edgecolor”、“linewidth”和其他应该传递给matplotlib的参数和关键字时(据我的理解)。

这是我的代码示例

我可能做错了什么,但即使我试图重现这个例子:

更改 geopandas 中的单个补丁颜色

我无法正确处理,但仍然出现类型错误

谢谢你的帮助

Python 2.7.10 Anaconda 2.0.1 (x86_64)、Matplotlib 1.4.3、GeoPandas 0.1.1(pysal 1.10.0、笛卡尔 1.0.1)

0 投票
1 回答
922 浏览

python-2.7 - Geo Pandas Data Frame / Matrix - 过滤/删除 NaN / False 值

我将 GeoSeries.almost_equals(other[, decimal=6]) 函数应用于具有 10 00 万个条目的地理数据框,以便找到彼此靠近的多个地理点。: 我的数据

在此处输入图像描述

这给了我矩阵,现在我需要过滤所有 True 值,以便创建只有与地理相关的 POI 的 DF/列表,所以我使用了: 在此处输入图像描述

现在,我很难弄清楚如何进一步使用这个矩阵的过滤器。预期的输出是向量、列表或理想情况下的 DF,其所有 TRUE(匹配)值但彼此匹配 re 1 到 1,并重复(如果 [1,9] 则 [9,1] 从输出列表示例中删除: 在此处输入图像描述

DF 示例:

在此处输入图像描述

0 投票
1 回答
2476 浏览

python - Geopandas 读取文件

read_file使用该功能时,我遇到了一些关于 geopandas 和 fiona 的问题。这是我的回溯:

df = gpd.read_file('/Users/danqing0703/github/Land-Use-Simulation/LBS_Data_Fetching/osm_api/singapore_roads.geojson')