Попытка построить список объектов shapefile.Shape;части фигур из одного оригинального шейп файла - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть шейп-файл, который включает глобальные регионы полетной информации (FIR). У меня также есть 10 пустых списков мест для добавления фигур. В зависимости от местоположения, к которому ближе всего каждый РПИ, эта фигура будет добавлена ​​в пустой список. Похоже, что все регионы были добавлены, основываясь на распечатке каждого списка и длины (он суммируется правильно) в конце процесса. Проблема заключается в попытке отобразить десять списков поверх шейп-файла в разных цветах, чтобы увидеть, какой FIR принадлежит какому месту. Я ничего не могу найти в этом конкретном процессе, но вот как выглядит один из списков:

[<shapefile.Shape object at 0x3ca5990>, <shapefile.Shape object at 0x3ca5a50>, <shapefile.Shape object at 0x3ca5ed0>, <shapefile.Shape object at 0x3d46090>, <shapefile.Shape object at 0x3d460d0>, <shapefile.Shape object at 0x3d46110>, <shapefile.Shape object at 0x3d46250>, <shapefile.Shape object at 0x3d46690>, <shapefile.Shape object at 0x3d46710>, <shapefile.Shape object at 0x3d46890>, <shapefile.Shape object at 0x3d468d0>, <shapefile.Shape object at 0x3d46910>, <shapefile.Shape object at 0x3d46950>, <shapefile.Shape object at 0x3d46990>, <shapefile.Shape object at 0x3d469d0>, <shapefile.Shape object at 0x3d46c10>, <shapefile.Shape object at 0x3d46c90>, <shapefile.Shape object at 0x3d46cd0>, <shapefile.Shape object at 0x3d46d50>, <shapefile.Shape object at 0x3d46d90>, <shapefile.Shape object at 0x3d46e50>, <shapefile.Shape object at 0x3d46f90>, <shapefile.Shape object at 0x3de1050>, <shapefile.Shape object at 0x3de1090>, <shapefile.Shape object at 0x3de10d0>, <shapefile.Shape object at 0x3de1390>, <shapefile.Shape object at 0x3de13d0>, <shapefile.Shape object at 0x3de1450>, <shapefile.Shape object at 0x3de1c90>, <shapefile.Shape object at 0x3de1fd0>, <shapefile.Shape object at 0x3fc1210>, <shapefile.Shape object at 0x3fc1b50>]

Тогда есть еще 9 похожих списков. Вот базовая карта:

fig = plt.figure()
ax = fig.add_subplot(111)

m = Basemap(projection='mill',llcrnrlat=-90, urcrnrlat=90,\
            llcrnrlon=-180, urcrnrlon=180, resolution='c')

m.drawcoastlines()
m.fillcontinents(color='peru', lake_color='aqua')
m.drawmapboundary(fill_color='aqua')

Я затем m.readshapefile в шейп-файле с нашего внутреннего сервера.

У меня нет возможности использовать геопанды, arcgis;Лучше всего было бы просто придерживаться basemap и matplotlib.

Любая помощь в том, как построить эти 10 отдельных списков с разными цветами, будет потрясающей!

TIA!

...