问题标签 [fiona]
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.
python - 为什么 Python 包 Fiona 正在搜索 Microsoft.VC90.DebugCRT?
我安装了 Python 包 Fiona。当我尝试在我的应用程序中导入它时,我收到以下错误:
文件“C:\Anaconda3\lib\site-packages\fiona\collection.py”,第 7 行,在
从 fiona.ogrext 导入迭代器,ItemsIterator,KeysIterator
ImportError: DLL load failed: 应用程序无法启动,因为它的并排配置不正确。请查看应用程序事件日志或使用命令行 sxstrace.exe 工具了解更多详细信息。
我使用了 Windows 的“事件查看器”并检查了问题:
“C:\Anaconda3\Library\bin\netcdf.dll”的激活上下文生成失败。相关程序集 Microsoft.VC90.DebugCRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" 找不到。请使用 sxstrace.exe 进行详细诊断。
从这个问题我收集到一些模块正在使用调试库,它不应该。我以为可能是GDAL?如何检测 Fiona 本身或 Fiona 的某些依赖项是否正在执行此操作?
我试图卸载 Fiona(和 GDAL)并重新安装它们。
我可以使用以下方法成功卸载和安装它们:
但错误仍然存在。
python - Geopandas 读取文件
read_file
使用该功能时,我遇到了一些关于 geopandas 和 fiona 的问题。这是我的回溯:
df = gpd.read_file('/Users/danqing0703/github/Land-Use-Simulation/LBS_Data_Fetching/osm_api/singapore_roads.geojson')
geopandas - 菲奥娜读取数据
我在使用 geopandas 读取数据时遇到问题,但根据这篇文章,我试图将 fiona 重新安装到 1.1.6 版本,但似乎错误是由于 fiona 造成的,但它仍然不起作用..
使用 fiona.open('taz.shp') 作为 src 导入 fiona:用于 src 中的功能:打印功能
但是当我编写其他类似的脚本时,它似乎可以工作
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 的帮助将不胜感激
python - 在 Centos 安装 Fiona
这个问题与我之前的两个问题有关:
我通过升级整个系统让 geopandas 工作。我没有让 Fiona 工作,以下是我尝试时遇到的错误
python - 地理空间分析(shapefile 中的纬度)
这是Python中地理空间分析的后续问题
这个问题类似于https://gis.stackexchange.com/questions/84114/shapely-unable-to-tell-if-polygon-contains-point但反转纬度似乎已经解决了这个问题,但它不是帮我。
Uber 数据以 lat/long 形式给出,非常直接,反向查找在 geopandas 中使用时给出地址
然而,问题是在 shapefile 中查找那些纬度/经度。Uber 数据如下所示:
形状文件多边形边界看起来像
所以 polygon/polygon.contains(point) 中的点不起作用。查看数据,与 shapely 文件相比,lat long 非常小,我不确定是否必须将一个单位转换为另一个单位,看起来完全不同的公制:) 下面是代码:
Uber 数据和 SFO shapefile 的链接在这里http://hortonworks.com/blog/magellan-geospatial-analytics-in-spark/#comment-606532
python - 如何使用 Python 将折线 shapefile 转换为栅格数据
这是我的问题。我有一堆折线显示,例如:
http://i4.tietuku.com/bc378d1cd2c24142.png
我想基于折线生成栅格数据,其中包含一个网格中线的长度。
例如:
http://i4.tietuku.com/a09ba42a122f561a.png
===== 添加 ====
从此使用 ArcGIS 找到答案
从此使用 R
我的目标是使用带有一些开源模块(gdal、fiona 等)的Python 将折线转换为栅格
python - 把点放在陆地上,把点放在水上
我有几个多边形,它们实际上是点的联合。我想要一种相当快速的方法来删除不是陆地的点(但在河流、湖泊、海洋等)。
所以到目前为止,我已经想出了以下方法,它将我从左图带到右图:
然后在一个循环中我测试我的观点:
我使用三个适合我的目的的形状文件(湖泊有点粗糙):海岸、湖泊、小湖。
但是,对于 10,000 点,代码有点慢(我有大约 30 个文件,所以要检查 300,000 点)。
我想知道以下任何一项是否可能:
1) 我正在循环遍历形状并检查 shape.contains(point) 而不是遍历点并检查 point.within(shape) -> 我不确定是否会有改进?
2)使用空间索引可能会加快速度,但我认为 RTree 不再适用于 Python 3.4
3)也许有一个更快的功能(粗略的包含),它只检查边界,我可以将它用作第一步,然后包含作为步骤 2。
4)不是循环通过点,有没有办法一次矢量化和传递?
5)也许将形状优美的多边形转换为路径会更快,以便我可以使用matpotlib的path.contains_point?
6)最后,我意识到我可能应该使用墨卡托投影作为多边形测试中的点,但粗剪对我来说很好(它不像水形状文件那样超级准确)。
谢谢
python - 查找 shapefile 中补丁子集的地图边界(Python)
我正在尝试在 Python 的 shapefile 中绘制某些区域的地图。我的基本方法是这样的:
现在我的问题是 shapefile 覆盖了更大的地理区域,但我只想绘制该区域的一个子集(例如,我有一个英国 shapefile,但想绘制威尔士所有地区的地图)。现在我可以识别正确的区域并只添加上面示例中的那些补丁,但是 matplotlib 仍然会绘制 shapefile 中所有区域的边界,并且由 fiona 的bounds
方法识别的边界显然与我的补丁子集无关选择。
我有两个与此相关的问题:
如何让 matplotlib 仅绘制 shapefile 中定义的补丁子集的边界?
如何获得补丁子集的边界,类似于 fiona 的
bound
方法对整个 shapefile 所做的那样?
python - 使用 Python fiona 读取多边形
现在,我可以使用fiona读取一个特定的多边形并将其绘制如下:
输出如下:
http://i13.tietuku.com/65d7d9d6a423a5d3.png
但是当 shapefile 由几个 shapefile 组成时,如下所示:
http://i13.tietuku.com/a331edcbeec29d5e.png
我不能使用上面的类似代码来获得 4 个多边形代表 4 个不同的区域。
我的问题
如何使用 fiona 读取并将其转换为几个 fiona.polygon(在我的示例中,我想获得四个多边形)。然后,我可以使用每个多边形来做更多的操作。