Python 如何使用geojson和shapely确定点是否位于多边形内

Python 如何使用geojson和shapely确定点是否位于多边形内,python,polygon,geojson,shapely,Python,Polygon,Geojson,Shapely,我希望在地图上创建一个区域,并能够自动确定点(坐标)是否在该区域内。在这个例子中,我使用了整个美国的geojson文件和纽约市的坐标 Geojson: 我已经阅读了shapely文档,只是不明白为什么我的结果返回False。任何帮助都将不胜感激 import json from shapely.geometry import shape, GeometryCollection, Point with open('USA.geo.json', 'r') as f: js = json.l

我希望在地图上创建一个区域,并能够自动确定点(坐标)是否在该区域内。在这个例子中,我使用了整个美国的geojson文件和纽约市的坐标

Geojson:

我已经阅读了shapely文档,只是不明白为什么我的结果返回False。任何帮助都将不胜感激

import json
from shapely.geometry import shape, GeometryCollection, Point

with open('USA.geo.json', 'r') as f:
    js = json.load(f)

point = Point(40.712776, -74.005974)

for feature in js['features']:

    polygon = shape(feature['geometry'])

    if polygon.contains(point):
        print ('Found containing polygon:', feature)

我希望打印包含的坐标,但没有打印任何内容。

您需要交换
点()
的值:

point = Point(-74.005974, 40.712776)
您正在使用的数据集的坐标是经度第一,纬度第二