wmpolygon

Отобразите географический многоугольник на веб-карте

Описание

пример

wmpolygon(lat,lon) отображает наложение многоугольника, заданное вершинами в lat и lon на текущей веб-карте. Если нет никакой текущей веб-карты, wmpolygon создает тот. wmpolygon центры и шкалы карта так, чтобы все векторные оверлейные программы, отображенные в веб-карте, отобразились.

пример

wmpolygon(P) отображает наложение многоугольника на основе векторных географических особенностей, сохраненных в P. Наложение содержит одну функцию многоугольника каждого элемента P.

wmpolygon(wm,___) отображает наложение в веб-карте, заданной веб-указателем карты, wm.

пример

wmpolygon(___,Name,Value) задает пары "имя-значение", которые устанавливают дополнительные свойства отображения.

h = wmpolygon(___) возвращает указатель на наложение.

Примеры

свернуть все

Загрузите данные о береговой линии из MAT-файла.

load coastlines

Отобразите береговые линии как слой наложения многоугольника.

wmpolygon(coastlat,coastlon,'OverlayName','Polygon coastlines')

Задайте координаты звонков. В данном примере координаты задают местоположение, сосредоточенное на Эйфелевой башне.

lat0 = 48.858288;
lon0 = 2.294548;
outerRadius = .01;
innerRadius = .005;
[lat1,lon1] = scircle1(lat0,lon0,outerRadius);
[lat2,lon2] = scircle1(lat0,lon0,innerRadius);
lat2 = flipud(lat2);
lon2 = flipud(lon2);
lat = [lat1; NaN; lat2];
lon = [lon1; NaN; lon2];

Отобразитесь на веб-карте.

webmap('worldimagery')
wmpolygon(lat,lon,'EdgeColor','g','FaceColor','c','FaceAlpha',.5)

Импортируйте файл форм, содержащий данные о государственной границе как геопространственная таблица.

GT = readgeotable("usastatelo.shp");

Создайте палитру из случайных, цветов с отключенным звуком.

colors = polcmap(height(GT));

Отобразите многоугольники как наложение на веб-карте. Сделайте многоугольники полупрозрачными при помощи FaceAlpha аргумент значения имени.

webmap("worldphysicalmap")
wmpolygon(GT,"FaceColor",colors,"FaceAlpha",0.5,"EdgeColor","k", ...
      "EdgeAlpha",0.5,"OverlayName","USA Boundary","FeatureName",GT.Name)

Большие наборы данных могут иногда не спешить отображаться, заставляя веб-карту, казаться, висеть. В этом примере показано, как уменьшать размер использования набора данных reducem прежде, чем вызвать wmpolygon.

Во-первых, загрузите векторные данные с высоким разрешением в рабочую область.

states = shaperead('usastatehi.shp','UseGeoCoords', true);
states = geoshape(states);

Затем уменьшайте число точек в векторах широты и долготы с помощью reducem функция.

for k = 1:length(states)
    [states(k).Latitude, states(k).Longitude] = reducem( ...
        states(k).Latitude', states(k).Longitude');
end

Отобразите государственные границы на веб-карте. Обратите внимание на то, что границы уменьшаемых многоугольников не могут встретиться, если вы увеличиваете масштаб их.

colors = polcmap(length(states));
webmap('worldphysicalmap')
wmpolygon(states,'FaceColor',colors,'FaceAlpha',.5,'EdgeColor','k', ...
    'EdgeAlpha',.5,'OverlayName','USA Boundary','FeatureName',states.Name)

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

свернуть все

Вершины широты в виде матрицы в области значений [-90, 90].

Типы данных: single | double

Долгота вершин в виде матрицы.

Типы данных: single | double

Географические особенности в виде одного из следующего:

Веб-карта в виде указателя на веб-карту.[1]

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: wmpolygon(lat,lon,'Autofit',true)

Наложите видимость в виде разделенной запятой пары, состоящей из 'Autofit' и скалярное логическое или числовое значение true(1 ) или false(0 ).

  • Если true, wmpolygon настраивает пространственную степень карты, чтобы гарантировать, что все векторные оверлейные программы на карте отображаются.

  • Если false, wmpolygon не настраивает пространственную степень карты, когда этот векторный слой добавляется к карте.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Описание функции в виде разделенной запятой пары, состоящей из 'Description' и вектор символов, массив ячеек из символьных векторов или скалярная структура.

  • Если вы задаете вектор символов, текст задает содержимое, отображенное в воздушном шаре описания, который появляется, когда вы кликаете по функции в веб-карте. Элементами описания может быть или простой текст или повышенный с разметкой HTML.

  • Если вы задаете массив ячеек, это должен быть или скаляр или та же длина как P, и задает описание для каждого многоугольника.

  • Если значение является структурой (спецификация атрибута), wmpolygon отображает поля атрибута P в воздушном шаре, модифицированном согласно спецификации.

Типы данных: char | struct | cell

Имя слоя наложения в виде разделенной запятой пары, состоящей из 'OverlayName' и вектор символов. wmpolygon вставляет имя в менеджере по Слою под элементом "Оверлейных программ". Менеджер по Слою является инструментом, который появляется на правой стороне веб-карты. Имя по умолчанию является 'Наложением Многоугольника N' где N номер, присвоенный этому наложению.

Типы данных: char

Имя функции в виде разделенной запятой пары, состоящей из 'FeatureName' и вектор символов или массив ячеек из символьных векторов. Имя появляется в воздушном шаре, когда вы кликаете по функции в веб-карте. Значением по умолчанию является 'OverlayName: Многоугольник K', где OverlayName имя наложения и K номер, присвоенный конкретному многоугольнику.

  • Если значение является вектором символов, оно применяется ко всем функциям.

  • Если значение является массивом ячеек из символьных векторов, это должен быть или скаляр или та же длина как P.

Типы данных: char | cell

Цвет многоугольника стоит в виде разделенной запятой пары, состоящей из 'FaceColor' и одна из этих опций.

  • Название цвета, такое как 'red' или краткое название, такое как 'r'.

  • Триплет RGB, который является трехэлементным вектором-строкой, элементы которого задают интенсивность красных, зеленых, и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Массив ячеек названий цвета, таких как {'red','green','blue'} или {'r','g','b'}.

  • Вектор строки из названий цвета, таких как ["red" "green" "blue"] или ["r" "g" "b"].

  • Матрица A триплетов RGB, которая является матрицей с тремя столбцами, в которой каждой строкой является триплет RGB.

Путем вы указываете, что цвет зависит от схемы требуемого цвета.

  • Чтобы применить ту же поверхность окрашивают ко всем многоугольникам в P, задайте одно название цвета или триплет RGB.

  • Применять различный цвет к каждому многоугольнику в P, задайте массив ячеек названий цвета, вектор строки из названий цвета или матрицу триплетов RGB. Количество цветов и триплетов RGB должно совпадать с длиной P.

  • Чтобы создать многоугольники без заливки, задайте 'none'.

Эта таблица содержит названия цвета и эквивалентные триплеты RGB для некоторых простых цветов.

Название цветаКраткое названиеТриплет RGBВнешний вид
'red''r'[1 0 0]

Sample of the color red

'green''g'[0 1 0]

Sample of the color green

'blue''b'[0 0 1]

Sample of the color blue

'cyan' 'c'[0 1 1]

Sample of the color cyan

'magenta''m'[1 0 1]

Sample of the color magenta

'yellow''y'[1 1 0]

Sample of the color yellow

'black''k'[0 0 0]

Sample of the color black

'white''w'[1 1 1]

Sample of the color white

Типы данных: char | string | cell | double

Прозрачность многоугольника стоит в виде разделенной запятой пары, состоящей из 'FaceAlpha' и числовой скаляр или вектор в области значений [0, 1]. Значение по умолчанию, 1, средние значения, что многоугольник полностью непрозрачен.

  • Если значение является скаляром, оно применяется ко всем поверхностям многоугольника.

  • Если значение является вектором, это должна быть та же длина как P.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Цвет ребер многоугольника в виде разделенной запятой пары, состоящей из 'EdgeColor' и одна из этих опций.

  • Название цвета, такое как 'red' или краткое название, такое как 'r'.

  • Триплет RGB, который является трехэлементным вектором-строкой, элементы которого задают интенсивность красных, зеленых, и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Массив ячеек названий цвета, таких как {'red','green','blue'} или {'r','g','b'}.

  • Вектор строки из названий цвета, таких как ["red" "green" "blue"] или ["r" "g" "b"].

  • Матрица A триплетов RGB, которая является матрицей с тремя столбцами, в которой каждой строкой является триплет RGB.

Путем вы указываете, что цвет зависит от схемы требуемого цвета.

  • Применять тот же цвет обводки ко всем многоугольникам в P, задайте одно название цвета или триплет RGB.

  • Чтобы применить другой край окрашивают к каждому многоугольнику в P, задайте массив ячеек названий цвета, вектор строки из названий цвета или матрицу триплетов RGB. Количество цветов и триплетов RGB должно совпадать с длиной P.

  • Чтобы создать многоугольники без цвета обводки, задайте 'none'.

Эта таблица содержит названия цвета и эквивалентные триплеты RGB для некоторых простых цветов.

Название цветаКраткое названиеТриплет RGBВнешний вид
'red''r'[1 0 0]

Sample of the color red

'green''g'[0 1 0]

Sample of the color green

'blue''b'[0 0 1]

Sample of the color blue

'cyan' 'c'[0 1 1]

Sample of the color cyan

'magenta''m'[1 0 1]

Sample of the color magenta

'yellow''y'[1 1 0]

Sample of the color yellow

'black''k'[0 0 0]

Sample of the color black

'white''w'[1 1 1]

Sample of the color white

Типы данных: char | string | cell | double

Прозрачность ребер многоугольника, заданных разделенная запятой пара, состоящая из 'EdgeAlpha' и в виде числа или вектора в области значений [0, 1].

  • Если значение является скаляром, оно применяется ко всем поверхностям многоугольника.

  • Если значение является вектором, это должна быть та же длина как P.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Ширина ребер многоугольника в виде разделенной запятой пары, состоящей из 'LineWidth' и положительный числовой скаляр или вектор.

  • Если значение является скаляром, оно применяется ко всем поверхностям многоугольника.

  • Если значение является вектором, это должна быть та же длина как P.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

свернуть все

Наложение многоугольника, возвращенное как указатель на наложение многоугольника.

Советы

  • Когда вы перемещаете курсор через многоугольники, вы задаете на изображении и нажатии кнопки, wmpolygon отображает воздушный шар описания и отключает панорамирование. Если вы перемещаете курсор от многоугольника, можно все еще кликнуть и панорамировать изображение. Можно также использовать клавиши со стрелками, чтобы панорамировать изображение.

Введенный в R2016a

[1] Выравнивание контуров и меток области является представлением функции, обеспеченной по условию поставщики, и не подразумевает подтверждение MathWorks®.

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