我有一个包含芝加哥地址的DataFrame,我已经将其地理编码为纬度和经度值,然后编码为Point对象(使DataFrame成为GeoDataFrame)。一小部分被错误地用芝加哥以外的LatLong值进行了地理编码。我有一个芝加哥边界的形状文件(GeoDataFrame),我想选择点在芝加哥边界多边形之外的所有行。
选择多边形内的所有点很容易(通过geopandas sjoin函数),但我还没有找到一种选择不在多边形内的点的好方法。有人存在吗?
如果您将芝加哥边界GeoDataFrame转换为单个多边形,例如:
chicago = df_chicago.geometry.unary_union
然后,您可以使用带有in
操作符的布尔过滤来选择芝加哥内外的点:
within_chicago = df[df.geometry.within(chicago)]
outside_chicago = df[~df.geometry.within(chicago)]
使用~
反转布尔条件。
或者,您可以使用不相交的
空间谓词:
outside_chicago = df[df.geometry.disjoint(chicago)]
我有一些关于点为双类型的多边形的问题...我要做的是,给定点,创建多边形,然后测试1个具体点是否在多边形内。 所以我知道在Java中有一个类,叫做多边形,用得像这样:(三角形) 但我的“多边形”必须是“双”类型,而不是“int”(简单示例) 在我的项目中,我真的不需要在小程序或类似物上绘制它,我只需要计算点是否在里面。 所以我的问题是: 有没有什么方法可以用双坐标来处理多边形,可以计算这个点(双坐
问题内容: 我正在使用elasticsearch1.4.1-1.4.4。我正在尝试将地理多边形形状(文档)索引到索引中,现在在对形状进行索引时,我想知道地理坐标是否位于该特定索引的地理多边形形状的边界内。 使用上面的地理多边形过滤器,我可以使所有索引的地理坐标都位于所描述的多边形内,但是我还需要知道未索引的地理坐标是否位于此地理多边形中。我的怀疑是,在elasticsearch1.4.1中是否可行
我使用以下方法从拉多边形中获取多边形: 但是,我正在尝试从多边形获取坐标,但我不能: poligon@polygons[1]类“Polygons”Slot“Polygon”的对象:[1]类“多边形”Slot”labpt“的对象:[1]-46.37327-23.91955 提前致谢
形状多边形的例子
我应该自己写方法吗?尽管我害怕不能解释一些事情,因为我的数学已经生疏了。或者我能为Java找到一个现成的实现吗?我有谷歌地图sdk在我的项目,但我找不到任何有用的东西。