Я новичок в построении карт с помощью Python matplotlib-basemap (обычно с использованием GMT, но мне нужен способ, который можно легко использовать для построения карт для обучения). Я хочу построить карту Индонезии до середины Пацифи c, между 90 ° E и 160 ° W - пока все хорошо - на которой я хочу построить границы тектонии c. Я скачал что-то вроде официальной базы данных тектони c пластин: https://github.com/fraxen/tectonicplates, включая шейп-файлы.
Очевидно, что несовместимость с соглашением по долготе между 0/360 ° против 180 / -180, и я не могу заставить границы тектонии c пересекать 180 ° !!
Вот мой код, приложенные результаты:
m = Basemap(llcrnrlon=90.,urcrnrlon=220.,llcrnrlat=-30.,urcrnrlat=70.,\
resolution='h',projection='gall', lon_0=240.,lat_0=20.)
m.readshapefile('tectonicplates-master/PB2002_boundaries',
name='Pacific',
drawbounds=True,
color='blue', zorder=2)
m.drawcoastlines()
m.drawparallels(np.arange(-30,65,20),labels=[1,0,0,0])
m.drawmeridians(np.arange(90,220,30),labels=[0,0,0,1])
Я пробовал разные проекции, ничего не работает, и я не знаю, возможно ли это, и если да, то как выбрать конкретный c область с файлом readshapefile, возможно, чтобы выполнить его дважды между 0/180 и -180/0 ...
Кто-нибудь когда-либо имел эту проблему и нашел решение?
Индонезия-Pacifi c