微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何检查点是否在多边形shapefile中?

如何解决如何检查点是否在多边形shapefile中?

我有一个像这样的“ point.csv”,坐标系是wgs84(4326)

df = pd.DataFrame("point.csv")


        user_ID day latitude    longitude
0   19998   2011/1/1    35.685067   140.211433
2   19998   2011/1/1    35.684606   140.210978
4   19998   2011/1/1    35.690237   140.231615
6   19998   2011/1/1    35.660564   140.314109
9   19998   2011/1/1    35.68513    140.210979
10  19998   2011/1/2    35.685047   140.211501
13  19998   2011/1/2    35.651321   140.119088
15  19998   2011/1/2    35.684992   140.211178
16  19998   2011/1/3    35.685346   140.211135
20  19998   2011/1/3    35.7845 140.317763
23  19998   2011/1/3    35.759994   140.296097
26  19998   2011/1/3    35.685233   140.210879
27  19998   2011/1/4    35.685178   140.211602
29  19998   2011/1/4    35.548604   139.783602
31  19998   2011/1/4    35.551758   139.786091
33  19998   2011/1/4    35.551758   139.786091
35  19998   2011/1/4    35.537746   139.791026
37  19998   2011/1/4    35.548604   139.783602
41  19998   2011/1/4    35.545373   139.713378
42  19998   2011/1/5    35.545428   139.713465

我有一个这样的多边形(shapefile):

polygon.shp”(坐标系为wgs84(4326))

enter image description here

我要检查点是否在多边形内(或相交), 如果是,则df ['whether'] = 1;如果没有,则df ['whether'] = 0

我该怎么办?

我尝试这样的代码

polygon_map = gpd.GeoDataFrame.from_file('polygon.shp')
df['geometry'] = gpd.GeoSeries(list(zip(df['longitude'],df['latitude']))).apply(Point)
df2 = gpd.GeoDataFrame(df.copy())  
df2.crs = {'init': 'epsg:4326'}
df2['wether_area'] = np.where(df2.geometry.within(polygon_map),1,0)

但是结果表明多边形内只有一个点。但实际上,所有点都应该在多边形内。

我不知道怎么了。

非常感谢您!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?