Определить правильные значения для клипа в геопандах

предположим, что у нас есть следующий код:

import pandas as pd
import geopandas
import matplotlib.pyplot as plt
from geodatasets import get_path
df = pd.DataFrame(
    {
        "City": ["Tbilisi", "Batumi", "Kutaisi", "Rustavi"],
        "Country": ["Georgia", "Georgia", "Georgia", "Georgia"],
        "Latitude": [41.7225, 41.6458, 42.2500, 41.5472],
        "Longitude": [44.7925, 41.6417,42.7000, 45.0111]
    }
)
gdf = geopandas.GeoDataFrame(
    df, geometry=geopandas.points_from_xy(df.Longitude, df.Latitude), crs = "EPSG:4326"
)
world = geopandas.read_file(get_path("naturalearth.land"))
# print(world.)
# We restrict to Georgia
ax = world.clip([-90, -55, -25, 15]).plot(color = "white", edgecolor = "black")
# We can now plot our ``GeoDataFrame``.
gdf.plot(ax=ax, color = "red")

plt.show()

точные координаты я взял с данного сайта:

https://simplemaps.com/data/ge-cities

но результат, который я получаю, таков:

это потому, что у нас есть следующий клип:

ax = world.clip([-90, -55, -25, 15]).plot(color = "white", edgecolor = "black")

Основываясь на полученном рисунке, не могли бы вы сказать мне, какие значения для клипа мне следует принять? я пробовал следовать [0,40,20,40], но он возвращает ошибку пустого прямоугольника или что-то в этом роде, пожалуйста, дайте мне правильное направление

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
76
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Координаты вашего клипа на карте мира совершенно отличаются от координат городов...

Я угадал некоторые координаты на основе городов, и тогда результат выглядел лучше...

Изменён скрипт:

import pandas as pd
import geopandas
import matplotlib.pyplot as plt
from geodatasets import get_path

df = pd.DataFrame(
    {
        "City": ["Tbilisi", "Batumi", "Kutaisi", "Rustavi"],
        "Country": ["Georgia", "Georgia", "Georgia", "Georgia"],
        "Latitude": [41.7225, 41.6458, 42.2500, 41.5472],
        "Longitude": [44.7925, 41.6417, 42.7000, 45.0111],
    }
)
gdf = geopandas.GeoDataFrame(
    df, geometry=geopandas.points_from_xy(df.Longitude, df.Latitude), crs = "EPSG:4326"
)

world = geopandas.read_file(get_path("naturalearth.land"))
# print(world.)
# We restrict to Georgia
ax = world.clip([40, 40, 50, 45.0]).plot(color = "white", edgecolor = "black")
# We can now plot our ``GeoDataFrame``.
gdf.plot(ax=ax, color = "red")

plt.show()

Результат:

Другие вопросы по теме