Я пытаюсь вычислить кратчайшее расстояние между многоугольником и списком точек. В этом примере я использую наборы данных о естественной Земле для мира и городов.
Я написал приведенный ниже код, однако на выходе получается расстояние в градусах координат, а не в км. Посоветуйте, пожалуйста, как отредактировать код, чтобы получить км.
import geopandas as gpd
import pandas as pd
import matplotlib.pyplot as plt
world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
cities = gpd.read_file(gpd.datasets.get_path('naturalearth_cities'))
d=[]
#iam using geometry number [3] which is Canada.
for i in cities.geometry:
z=i.distance(world.geometry[3])
d.append(z)
print(d)
Также: Предположительно, результат [z = i.distance (world.geometry [3])] - это кратчайшее расстояние между точкой и многоугольником (не расстояние между центром тяжести многоугольника и точкой). Пожалуйста, дайте мне знать, если будет иначе.