Карта расширенной Европы с Картопией

Следующий код Python дает хорошее представление о Западной Европе:

import matplotlib.pyplot as plt
import cartopy
import cartopy.io.shapereader as shpreader
import cartopy.crs as ccrs

plt.figure(figsize=(10, 10))
ax = plt.axes(projection=ccrs.EuroPP())
ax.add_feature(cartopy.feature.BORDERS, linestyle='-', alpha=1)
ax.coastlines(resolution='10m')
ax.add_feature(cartopy.feature.OCEAN,facecolor=(0.5,0.5,0.5))
ax.gridlines()

Но как можно продлить карту на Восток, включая Турцию и другие кавказские государства? Нужно ли мне включать некоторые параметры в () из EuroPP()? Мне нужно поменять projection=ccrs.EuroPP() на что-то другое? Не нашел примеров ...

введите здесь описание изображения


person Andrew    schedule 26.04.2020    source источник
comment
Взгляните на источник, как определяется EuroPP .   -  person Jongware    schedule 26.04.2020
comment
Да я вижу как определяется class EuroPP(UTM) ... и так?   -  person Andrew    schedule 26.04.2020
comment
Я просто удаляю свой ответ, потому что он не работает должным образом. Работает только на низких широтах. Простите за это. Я попробую другое решение.   -  person swatchai    schedule 28.04.2020


Ответы (1)


Чтобы получить карту с аналогичной проекцией, поперечной проекцией Меркатора с центральным меридианом на долготе 32 градуса, попробуйте запустить этот код:

import cartopy
import cartopy.crs as ccrs
import matplotlib.pyplot as plt

plt.figure(figsize=(9, 9))
ax = plt.axes(projection=cartopy.crs.TransverseMercator(32))
ax.add_feature(cartopy.feature.BORDERS, linestyle='-', alpha=1)
ax.coastlines(resolution='110m')
ax.add_feature(cartopy.feature.OCEAN, facecolor=(0.5,0.5,0.5))
ax.gridlines()
ax.set_extent ((-7.5, 50, 34, 69), cartopy.crs.PlateCarree())
plt.show()

У вас получится такой сюжет:

europe_map

person swatchai    schedule 28.04.2020
comment
Что ж, очень приятно! Именно то, что я хотел и чего не мог сделать. Большое спасибо. - person Andrew; 29.04.2020