Переключитесь между проекциями

Если объект осей карты был создан с axesm, отображены ли данные о карте или нет, возможно изменить текущую проекцию, а также многие ее параметры. Можно использовать setm или maptool Пользовательский интерфейс, чтобы сбросить проекцию. Остальная часть этого раздела описывает факторы и параметры, вовлеченные в переключающиеся проекции в карте оси. Для дополнительной подробной информации предоставляют для того, чтобы сделать это с geoshow функция в Проекциях Карты Изменения Используя геопоказ.

Когда вы переключаетесь от одной проекции до другого, setm убирает настройки, которые были характерны для более ранней проекции, обновляет систему координат карты и координатную сетку, и обычно сохраняет карту, касающуюся той же части мира — переключаясь между азимутальными и неазимутальными проекциями. Но в некоторых случаях, вы можете должны быть далее настроить свойства осей карты достигнуть соответствующего внешнего вида. Настройки, которые подходят для одной проекции, не могут подходить для другого. Чаще всего необходимо будет обновить расположение меридиана и найти что-либо подобное меткам.

Измените меридиан обновления проекции и найдите что-либо подобное меткам

В этом примере показано, как изменить проекцию карты и обновить меридиан и параллельные метки.

Создайте Меркаторскую проекцию с меридианом и найдите что-либо подобное меткам.

axesm mercator
framem on; gridm on; mlabel on; plabel on
setm(gca,'LabelFormat','signed')
axis off

Получите карту по умолчанию и структурируйте пределы широты для Меркаторской проекции. Обратите внимание на то, что оба система координат и пределы широты карты собираются в 86 градусов на север и юг для Меркаторской проекции обеспечить безопасное расстояние от сингулярности в полюсах.

[getm(gca,'MapLatLimit'); getm(gca,'FLatLimit')]
ans = 2×2

   -86    86
   -86    86

Переключите проекцию на ортогональное азимутальное.

setm(gca,'MapProjection','ortho')

Задайте новые местоположения для меридиана и найдите что-либо подобное меткам.

setm(gca,'MLabelParallel',0,'PLabelMeridian',-90, ...
   'PLabelMeridian',-30)

Измените проекцию, сбрасывающую пределы системы координат

В этом примере показано, как переключиться от одной проекции до другого и сбросить источник и пределы системы координат, особенно при отображении небольшой части Земли.

Создайте пустую карту оси для области Соединенных Штатов в Ламберте Конформная Коническая проекция (проекция по умолчанию для usamap функция.

latlim = [32 42];
lonlim = [-125 -111];
h = usamap(latlim, lonlim);

Считайте usastatehi файл форм и возвращает подмножество содержимого файла форм, как задано пределами широты и долготы. shaperead функция возвращает данные в структуре под названием states .

states = shaperead('usastatehi', 'UseGeoCoords', true, ...
   'BoundingBox', [lonlim', latlim']);

Сохраните данные о широте и долготе из структуры в векторах lat и lon .

lat = [states.Lat];
lon = [states.Lon];

Закрашенная фигура проекта возражает на осях карты.

patchm(lat, lon, [0.5 0.5 1])

Измените проекцию в Ламберта Равная Азимутальная область и сбросьте источник и структурируйте пределы.

setm(gca,'MapProjection','eqaazim','Origin',[37 -118], ...
   'FLatLimit',[-Inf 6]) 
setm(gca,'mlinelocation',2,'plinelocation',2)
tightmap