Следующая программа работает, когда я не включаю "drawcoastlines". Большинство точек, которые я картирую, достаточно велики, чтобы включать береговую линию, но на одной конкретной карте никакой береговой линии нет. Когда это происходит, я получаю следующее сообщение об ошибке:
Файл "C: \ ProgramData \ Anaconda3 \ lib \ site-packages \ matplotlib \ path.py", строка 130, в init"'вершины' должны быть 2D списком или массивом с формой Nx2")
ValueError: 'вершины "должны быть 2D списком или массивом с формой Nx2
Вот упрощенная версия программы:
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
latMin = 25
latMax = 45
longMin = 95
longMax = 115
m = Basemap(projection='cyl', resolution='h', area_thresh = 0.1,
llcrnrlat=latMin, urcrnrlat=latMax,
llcrnrlon=longMin, urcrnrlon=longMax)
m.drawcountries(linewidth=1.00)
m.drawcoastlines(linewidth=0.5)
m.drawstates(linewidth = 0.2)
m.drawrivers(color='#6D5F47', linewidth=.4)
m.shadedrelief()
plt.show()
Я хотел бы проверить, содержит ли карта береговую линию. Если он тогда включает код береговой линии, если нет, то обойти код.
Есть предложения?