Карты Inset часто используются для отображения широко разделенных областей, обычно в одной и той же шкале, или для размещения карты в контексте путем включения обзоров в меньших шкалах. Можно создать карты вставки, вложив несколько осей в рисунок и определив соответствующие проекции карты для каждой. Чтобы убедиться, что шкала каждой из карт одинаковый, используйте axesscale
чтобы изменить их размер. В этом примере создайте вставную карту Калифорнии в той же шкале, что и карту Южной Америки, чтобы связать размер этого континента с более привычной областью.
Начните, определив систему координат карты для Южной Америки, используя worldmap
.
figure
h1 = worldmap('south america');
Использование shaperead
ознакомиться с земельными районами мира многоугольника shapefile.
land = shaperead('landareas.shp', 'UseGeoCoords', true);
Отображение данных в осях карты.
geoshow([land.Lat],[land.Lon]) setm(h1,'FFaceColor','w') % set the frame fill to white
Поместите оси для вставки в нижней середине системы координат карты и спроектируйте карту линии Калифорнии:
h2 = axes('pos',[.5 .2 .1 .1]); CA = shaperead('usastatehi', 'UseGeoCoords', true, ... 'Selector', {@(name) isequal(name,'California'), 'Name'}); usamap('california') geoshow([CA.Lat],[CA.Lon])
Установите цвет заливки системы координат и установите метки.
setm(h2,'FFaceColor','w') mlabel; plabel; gridm % toggle off
Задайте шкалу осей вставки, h2
(Калифорния), совпадает с шкалой исходных осей, h1
(Южная Америка). Скрыть границу карты.
axesscale(h1)
set([h1 h2], 'Visible', 'off')
Обратите внимание, что программное обеспечение тулбокса выбрало другую проекцию и соответствующие параметры для каждой области в зависимости от ее местоположения и формы. Можно переопределить эти варианты, чтобы сделать две проекции одинаковыми.
Узнайте, какие проекции карты используются, и затем сделайте проекцию Южной Америки такой же, как и проекцию Калифорнии.
getm(h1, 'mapprojection')
ans = 'eqdconic'
getm(h2, 'mapprojection')
ans = 'lambert'
setm(h1, 'mapprojection', getm(h2, 'mapprojection'))
Обратите внимание, что параметры для Южной Америки по умолчанию должным образом (те, что подходят для Калифорнии, не использовались).
Наконец, экспериментируйте с изменением свойств вставки, таких как ее цвет.
setm(h2, 'ffacecolor', 'y')