addCustomBasemap

Добавьте пользовательскую основную карту

Описание

пример

addCustomBasemap(basemapName,URL) добавляет пользовательская основная карта, заданная URL к списку basemaps, доступного для использования с отображением функций. basemapName имя, вы принимаете решение вызвать пользовательскую основную карту. Добавленные basemaps остаются доступными для использования на будущих сеансах MATLAB®.

Можно использовать пользовательский basemaps с webmap функционируйте и с MATLAB географические оси и графики.

пример

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

Примеры

свернуть все

Добавьте пользовательскую основную карту и постройте путь планера на нем.

Считайте данные о пути к планеру в рабочую область.

trk = gpxread('sample_mixed.gpx','FeatureType','track');

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

name = 'opentopomap';

Задайте веб-сайт, который обеспечивает данные о карте. Первый символ URL указывает который сервер использовать, чтобы получить данные. Для выравнивания нагрузки провайдер имеет три сервера, которые можно использовать: a, b, или c.

url = 'a.tile.opentopomap.org';

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

copyright = char(uint8(169));
attribution = [ ...
      "map data:  " + copyright + "OpenStreetMap contributors,SRTM", ...
      "map style: " + copyright + "OpenTopoMap (CC-BY-SA)"];

Задайте имя, которое, будет казаться, в менеджере по Слою будет представлять вашу пользовательскую основную карту.

displayName = 'Open Topo Map';

Добавьте пользовательскую основную карту в список доступных слоев основной карты.

addCustomBasemap(name,url,'Attribution',attribution,'DisplayName',displayName)

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

webmap opentopomap

Постройте дорожку пути к планеру на основной карте, указав, что ширина линии раньше представляла дорожку.

wmline(trk,'LineWidth',2)

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

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

name = 'openstreetmap';

Задайте веб-сайт, который обеспечивает данные о карте. Первый символ URL указывает который сервер использовать, чтобы получить данные. Для выравнивания нагрузки провайдер имеет три сервера, которые можно использовать: a, b, или c.

url = 'a.tile.openstreetmap.org';

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

copyright = char(uint8(169));
attribution = copyright + "OpenStreetMap contributors";

Задайте имя, которое, будет казаться, в менеджере по Слою будет представлять вашу пользовательскую основную карту.

displayName = 'Open Street Map';

Добавьте пользовательскую основную карту в список доступных слоев основной карты.

addCustomBasemap(name,url,'Attribution',attribution,'DisplayName',displayName)

Постройте местоположения по карте с помощью географической пузырьковой диаграммы. Можно задать пользовательскую основную карту, когда вы создаете географическую пузырьковую диаграмму.

pts = gpxread('boston_placenames');
gb = geobubble(pts.Latitude,pts.Longitude,'Basemap','openstreetmap');
gb.BubbleWidthRange = 25;
gb.MapLayout = 'maximized';
gb.ZoomLevel = 14;

Отобразите данные о пути к планеру на графике по множеству карт, доступных от Национального сайта Карты USGS. Это может быть хорошим способом просмотреть карты, доступные от сайта и определить, какая карта обеспечивает лучший фон для ваших данных.

Просмотрите путь к планеру на basemaps из Национальной Карты USGS. Создайте URL основной карты, заменив ОСНОВНУЮ КАРТУ на имя основной карты USGS.

Читайте в данных о дорожке пути к планеру.

trk = gpxread('sample_mixed','FeatureType','track');

Задайте пользовательскую основную карту URL. Национальная Карта USGS поддерживает несколько мозаичных веб-карт. В данном примере вставьте слово "ОСНОВНАЯ КАРТА" в строку URL. Таким образом можно заменить слово ОСНОВНАЯ КАРТА на имя одной из карт, поддержанных Национальной Картой USGS.

baseURL = "https://basemap.nationalmap.gov/ArcGIS/rest/services";
usgsURL = baseURL + "/BASEMAP/MapServer/tile/${z}/${y}/${x}";

Задайте список имен USGS basemaps, что вы хотите использовать. Эти имена будут вставлены в URL вместо "ОСНОВНОЙ КАРТЫ".

basemaps = ["USGSImageryOnly" "USGSImageryTopo" ...
       "USGSTopo" "USGSShadedReliefOnly" "USGSHydroCached"];

Задайте список имен отображения, которые можно использовать с каждой картой. Используйте имена отображения, которые совпадают с используемыми webmap так, чтобы webmap не содержит дублирующиеся карты.

displayNames = ["USGS Imagery" "USGS Topographic Imagery" ...
       "USGS Shaded Topographic Map" "USGS Shaded Relief" ...
       "USGS Hydrography"];
maxZoomLevel = 16;

Создайте приписывание карты, чтобы дать кредит провайдеру данных о карте.

attribution = 'Credit: U.S. Geological Survey';

Создайте цикл, в котором вы используете каждую основную карту с geoplot функция, отображая данные о планере на графике по каждому из USGS basemaps.

for k =1:length(basemaps)
   basemap = basemaps(k);
   name = lower(basemap);
   url = replace(usgsURL,"BASEMAP",basemap);
   displayName = displayNames(k);
   addCustomBasemap(name,url,'Attribution',attribution, ...
         'DisplayName',displayName,'MaxZoomLevel',maxZoomLevel)
   figure
   geoplot(trk.Latitude,trk.Longitude,'r','LineWidth',5);
   geobasemap(basemap)
   title(displayName)
end

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

свернуть все

Имя раньше идентифицировало основную карту программно, заданный как скаляр строки или вектор символов.

Пример: 'openstreetmap'

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

Параметризованная карта URL, заданный как скаляр строки или вектор символов. Параметризованный URL является индексом мозаик карты, отформатированных как ${z}/${x}/${y}.png или {z}/{x}/{y}.png, где:

  • ${z} или {z} уровень изменения масштаба мозаики.

  • ${x} или {x} индекс столбца мозаики.

  • ${y} или {y} индекс строки мозаики.

Пример: 'https://hostname/${z}/${x}/${y}.png'

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

Аргументы в виде пар имя-значение

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

Пример: addCustomBasemap(basemapName,URL,'Attribution',attribution)

Приписывание пользовательской основной карты, заданной как разделенная запятой пара, состоящая из 'Attribution' и скаляр строки, массив строк, вектор символов или массив ячеек из символьных векторов. Если хостом является 'localhost', или если URL содержит только номера IP, задайте пустое значение (''). Чтобы создать многострочное приписывание, задайте массив строк или нескалярный массив ячеек из символьных векторов.

Если вы не задаете приписывание, приписывание по умолчанию является 'Любезностью мозаик DOMAIN_NAME_OF_URL', где addCustomBasemap функция получает доменное имя из URL входной параметр.

Пример: 'Credit: U.S. Geological Survey'

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

Отобразите имя пользовательской основной карты, заданной как разделенная запятой пара, состоящая из 'DisplayName' и скаляр строки или вектор символов.

webmap функционируйте использует это имя в менеджере по Слою.

Пример: 'OpenStreetMap'

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

Максимальный уровень изменения масштаба основной карты, заданной как разделенная запятой пара, состоящая из 'MaxZoomLevel' и целое число в области значений [0, 25].

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

Карта является развертываемым MATLAB Compiler использования, заданным как разделенная запятой пара, состоящая из 'IsDeployable' и false или true.

Если вы развертываете приложение карты и хотите, чтобы пользователи имели доступ к добавленной основной карте, установили 'IsDeployable' к true. Для получения дополнительной информации о развертывании, смотрите Советы.

Типы данных: логический

Советы

  • Можно найти размещенные рядом веб-карты от различных поставщиков, таких как OpenStreetMap®, Национальная Карта USGS, Mapbox, DigitalGlobe, Esri® ArcGIS Online, полномочия Картографических данных Японии (GSI) и HERE Technologies. Соблюдайте соглашение условий предоставления услуг поставщиков карты и включайте точное приписывание с картами, которые вы используете.

  • Использовать пользовательскую основную карту в развертываемом приложении, когда вы вызываете addCustomBasemap, необходимо установить значение 'IsDeployable' пара "имя-значение" к true. Необходимо установить эту пару "имя-значение", вызываете ли вы addCustomBasemap в вашем приложении или за пределами вашего приложения.

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

Введенный в R2018b