usamap

Создайте оси карты для Соединенных Штатов Америки

Описание

пример

usamap state и

usamap(state) создайте пустую карту оси с Ламбертом Конформная Коническая проекция и сопоставьте пределы, покрывающие штат США или группу состояний, заданных state. Оси карты создаются в текущей системе координат, и пределы по осям установлены трудные вокруг системы координат карты.

usamap 'conus' и

usamap('conus') создайте пустую карту оси для совпадающих 48 состояний (то есть, всех состояний, исключая Аляску и Гавайи).

пример

usamap без подарков аргументов меню, из которого можно выбрать одно состояние, округ Колумбия, совпадающие 48 состояний или все состояния.

usamap(latlim,lonlim) создает пустого Ламберта, которого Конформные оси карты для области США задали его пределами широты и долготы в градусах.

usamap(Z,R) выводит пределы карты из степени обычной сетки данных, Z, геоссылаемый R.

h = usamap(___) возвращает указатель осей карты.

пример

h = usamap('all') построения три пустых оси карты, вставленные в одной фигуре, для совпадающих состояний, Аляски и Гавайев, со сферической моделью Earth и другими параметрами проекции, предложенными американской Геологической службой. Карты в этих трех осях показывают приблизительно в той же шкале. Указатели для трех осей карты возвращены в h.

usamap('allequal') совпадает с usamap('all'), но использование 'allequal' будет удален в будущем релизе.

Примеры

свернуть все

Сделайте карту Алабамы только.

figure
usamap('Alabama')
alabamahi = shaperead('usastatehi', 'UseGeoCoords', true,...
            'Selector',{@(name) strcmpi(name,'Alabama'), 'Name'});
geoshow(alabamahi, 'FaceColor', [0.3 1.0, 0.675])

Добавьте текст, чтобы пометить состояние.

textm(alabamahi.LabelLat, alabamahi.LabelLon, alabamahi.Name,...
  'HorizontalAlignment', 'center')

Сделайте карту непрерывного континентального массива, который содержит Калифорнию и Монтану.

figure
ax = usamap({'CA','MT'});
set(ax, 'Visible', 'off')
latlim = getm(ax, 'MapLatLimit');
lonlim = getm(ax, 'MapLonLimit');
states = shaperead('usastatehi',...
        'UseGeoCoords', true, 'BoundingBox', [lonlim', latlim']);
geoshow(ax, states, 'FaceColor', [0.5 0.5 1])

Добавьте метки в каждое состояние.

lat = [states.LabelLat];
lon = [states.LabelLon];
tf = ingeoquad(lat, lon, latlim, lonlim);
textm(lat(tf), lon(tf), {states(tf).Name}, ...
   'HorizontalAlignment', 'center')

Сопоставьте совпадающие Соединенные Штаты с различным цветом заливки для каждого состояния.

figure
ax = usamap('conus');
states = shaperead('usastatelo', 'UseGeoCoords', true,...
  'Selector',...
  {@(name) ~any(strcmp(name,{'Alaska','Hawaii'})), 'Name'});
faceColors = makesymbolspec('Polygon',...
    {'INDEX', [1 numel(states)], 'FaceColor', ... 
    polcmap(numel(states))}); %NOTE - colors are random
geoshow(ax, states, 'DisplayType', 'polygon', ...
   'SymbolSpec', faceColors)

Установите дополнительные настройки отображения.

framem off; gridm off; mlabel off; plabel off;

Сопоставьте США с отдельными осями для Аляски и Гавайев.

figure
ax = usamap('all');
set(ax, 'Visible', 'off')
states = shaperead('usastatelo', 'UseGeoCoords', true);
names = {states.Name};
indexHawaii = strcmp('Hawaii',names);
indexAlaska = strcmp('Alaska',names);
indexConus = 1:numel(states);
indexConus(indexHawaii|indexAlaska) = []; 
stateColor = [0.5 1 0.5];

Отобразите эти три области.

geoshow(ax(1), states(indexConus),  'FaceColor', stateColor)
geoshow(ax(2), states(indexAlaska), 'FaceColor', stateColor)
geoshow(ax(3), states(indexHawaii), 'FaceColor', stateColor)

Скройте систему координат.

for k = 1:3
    setm(ax(k), 'Frame', 'off', 'Grid', 'off',...
      'ParallelLabel', 'off', 'MeridianLabel', 'off')
end

Входные параметры

свернуть все

Состояние, чтобы отобразиться, заданный как скаляр строки, массив строк, вектор символов или массив ячеек из символьных векторов. Допустимые значения включают имена состояний, стандартных двухбуквенных американских сокращений Почтовой службы от состояний и 'District of Columbia'.

Пример: usamap({'Maine','Florida'}) устанавливает пределы карты, чтобы покрыть охват области от Мэна до Флориды.

Пределы широты, заданные как двухэлементный вектор формы [southern_limit northern_limit].

Пределы долготы, заданные как двухэлементный вектор формы [western_limit eastern_limit].

Сетка данных, заданная как M-by-N массив. Z обычная сетка данных, сопоставленная с географическим ссылочным R.

Географическая ссылка, заданная как одно из следующих.

ВводОписание
Географический объект растровой привязки

GeographicCellsReference или GeographicPostingsReference географический объект растровой привязки. RasterSize свойство должно быть сопоставимо с размером сетки данных, size(Z).

Вектор

1 3 числовой вектор с элементами:

[cells/degree northern_latitude_limit western_longitude_limit]
Матрица

3 2 числовая матрица, которая преобразовывает растровые индексы строки и столбца к или от географических координат согласно:

[lon lat] = [row col 1] * R

R задает (невращательный, нескошенный) отношение, в котором каждый столбец сетки данных падает вдоль меридиана и каждой строки падения вдоль параллели.

Для получения дополнительной информации о ссылке на векторы и матрицы, смотрите Растровые Данные, на Которые геоссылаются.

Выходные аргументы

свернуть все

Указатель осей карты, возвращенных как объект указателя.

Если вы используете синтаксис h = usamap ('все'), затем h массив объектов указателя. h(1) для совпадающих состояний, h(2) для Аляски, и h(3) для Гавайев.

Советы

  • Все оси создаются с usamap инициализируются со сферической моделью Earth, имеющей радиус 6 371 000 метров.

  • В некоторых случаях, usamap использование tightmap настраивать пределы по осям, трудные вокруг карты. Если вы изменяете проекцию, или только хотите больше пробела вокруг системы координат карты, используйте tightmap снова или axis auto.

  • axes(h(n)), где n = 1, 2, или 3, делает желаемые оси текущими.

  • set(h,'Visible','on') делает оси видимыми.

  • axesscale(h(1)) изменяет размер осей, содержащих Аляску и Гавайи к той же шкале как совпадающие состояния.

Смотрите также

| | | | | |

Представлено до R2006a

Для просмотра документации необходимо авторизоваться на сайте