Существует множество наборов геопространственных данных, содержащих данные с координатами в широте и долготе в единицах градусов. В этом примере показано, как импортировать географические данные с координатами в широте и долготе, отображать географические данные в отображении карты и настраивать отображение.
В частности, этот пример иллюстрирует, как
Импорт определенных наборов географических векторных и растровых данных
Создание отображения карты и визуализация данных
Отображение нескольких наборов данных в одном отображении карты
Настройка отображения карты с линейкой масштаба и стрелкой на север
Настройка отображения карты с помощью карты вставки
Данные географических векторов могут храниться в различных форматах, например форматах shapefile и GPS Exchange (GPX). В этом примере выполняется импорт данных географического вектора многоугольника из файла формы. Вершины в файле формы могут находиться либо в географических координатах (широта и долгота), либо в спроецированной системе координат.
Прочтите границы штатов США из usastatehi.shp файл, включенный в программное обеспечение Mapping Toolbox™. Границы штата находятся на широте и долготе.
states = shaperead('usastatehi.shp', 'UseGeoCoords', true);
Отображение данных географического вектора многоугольника на осях карты. Поскольку географическая протяженность находится в США, можно использовать usamap для настройки осей карты. Использовать geoshow для проецирования и отображения географических данных на осях карты. Отображение цвета океана на заднем плане путем задания цвета лица рамки.
figure ax = usamap('conus'); oceanColor = [0.3010 0.7450 0.9330]; landColor = [0.9290 0.6940 0.1250]; setm(ax, 'FFaceColor', oceanColor) geoshow(states,'FaceColor',landColor) title({ ... 'Conterminous USA State Boundaries', ... 'Polygon Geographic Vector Data'})

Импорт данных географических векторов точек из boston_placenames.gpx файл, включенный в программное обеспечение Mapping Toolbox™. Файл содержит координаты широты и долготы географических точек в части Бостона, штат Массачусетс, США. Использовать gpxread для чтения файла GPX и возврата geopoint вектор.
placenames = gpxread('boston_placenames.gpx');Импорт данных вектора линии из sample_route.gpx файл, включенный в программное обеспечение Mapping Toolbox™. Файл содержит координаты широты и долготы для маршрута GPS от международного аэропорта Бостон Логан до The MathWorks, Inc в Натике Массачусетс, США. Использовать gpxread для чтения файла GPX и возврата geopoint вектор.
route = gpxread('sample_route.gpx');Отображение данных географических векторов в осях карты, центрированных вокруг штата Массачусетс, с использованием данных из границ штата и файлов GPX. Координаты всех этих наборов данных находятся в широте и долготе.
Найдите границу штата Массачусетс.
stateName = 'Massachusetts';
ma = states(strcmp({states.Name},stateName));Использовать usamap для настройки осей карты для региона, окружающего Массачусетс. Раскрасьте океан, задав цвет лица кадра. Отображение границ штатов и выделение Массачусетса с помощью geoshow для отображения географических данных на осях карты. Поскольку маршрут GPX является набором точек, хранящихся в geopoint вектор, введите координаты широты и долготы в geoshow для отображения маршрута в виде линии.
figure ax = usamap('ma'); maColor = [0.4660 0.6740 0.1880]; setm(ax, 'FFaceColor', oceanColor) geoshow(states,'FaceColor',landColor) geoshow(ma, 'FaceColor', maColor) geoshow(placenames); geoshow(route.Latitude, route.Longitude); title({'Massachusetts and Surrounding Region', 'Placenames and Route'})

Увеличьте масштаб карты, рассчитав новые пределы широты и долготы для карты, используя масштаб имен плаценаций и данных маршрута. Увеличьте пределы на 0,05 градуса.
lat = [route.Latitude placenames.Latitude]; lon = [route.Longitude placenames.Longitude]; latlim = [min(lat) max(lat)]; lonlim = [min(lon) max(lon)]; [latlim, lonlim] = bufgeoquad(latlim, lonlim, .05, .05);
Создайте карту осей с новыми пределами и просмотрите географические данные.
figure ax = usamap(latlim, lonlim); setm(ax, 'FFaceColor', oceanColor) geoshow(ma,'FaceColor',maColor) geoshow(placenames) geoshow(route.Latitude, route.Longitude) title('Closeup of Placenames and Route')

Географические растровые данные могут храниться в различных форматах, например в форматах GeoTIFF, Esri Grid, DTED и ENVI. Для чтения данных в этих форматах используйте readgeoraster функция.
Чтобы прочитать изображение, связанное с мирским файлом, используйте imread и worldfileread вместо этого выполняет функции. Использовать imread для чтения изображения и worldfileread для чтения файла мира и построения объекта пространственной ссылки. Для этого примера импортируйте данные для региона, окружающего Бостон, штат Массачусетс. Координаты изображения - в широте и долготе.
filename = 'boston_ovr.jpg'; RGB = imread(filename); R = worldfileread(getworldfilename(filename), 'geographic', size(RGB));
Отображение изображения RGB на осях карты. Границы карты устанавливаются в пределы, определенные пространственным ссылочным объектом, R. Координаты данных выражены в широте и долготе.
figure ax = usamap(RGB, R); setm(ax, ... 'MLabelLocation',.05, 'PLabelLocation',.05, ... 'MLabelRound',-2, 'PLabelRound',-2) geoshow(RGB, R) title('Boston Overview')

Растровые и векторные данные можно отображать в одном отображении карты. Поскольку координаты всех этих наборов данных находятся в широте и долготе, используйте geoshow для отображения их в одном отображении карты. Установите новые ограничения на основе пределов маршрута, имен плаценаций и обзорного изображения.
lat = [route.Latitude placenames.Latitude R.LatitudeLimits]; lon = [route.Longitude placenames.Longitude R.LongitudeLimits]; latlim = [min(lat) max(lat)]; lonlim = [min(lon) max(lon)];
figure ax = usamap(latlim, lonlim); setm(ax, 'GColor','k', ... 'PLabelLocation',.05, 'PLineLocation',.05) geoshow(RGB, R) geoshow(ma.Lat, ma.Lon, ... 'LineWidth', 2, 'Color', 'y') geoshow(placenames) geoshow(route.Latitude, route.Longitude) title('Boston Overview and Geographic Vector Data')

Настройте отображение карты, включив линейку масштаба. Масштабная линейка - это графический объект, который показывает расстояния на земле при правильном размере проекции. В этом примере показано, как построить линейку масштаба, отображающую горизонтальные расстояния в международных милях.
Вычислите пределы широты и долготы Массачусетса и увеличьте их на 0,05 градуса с помощью bufgeoquad функция.
latlim = [min(ma.Lat), max(ma.Lat)]; lonlim = [min(ma.Lon), max(ma.Lon)]; [latlim, lonlim] = bufgeoquad(latlim, lonlim, .05, .05);
Отображение на карте границы состояния, местоимений, маршрута и обзорного изображения.
figure ax = usamap(latlim, lonlim); setm(ax, 'FFaceColor', oceanColor) geoshow(states,'FaceColor', landColor) geoshow(ma, 'LineWidth', 1.5, 'FaceColor', maColor) geoshow(RGB, R) geoshow(placenames) geoshow(route.Latitude, route.Longitude) titleText = 'Massachusetts and Surrounding Region'; title(titleText)

Вставка масштабной линейки. Расположение масштабной линейки можно определить с помощью команды ginput как показано ниже:
[xLoc,yLoc] = ginput(1);
Ранее выбранное расположение задается ниже.
xLoc = -127800; yLoc = 5014700; scaleruler('Units', 'mi', 'RulerStyle', 'patches', ... 'XLoc', xLoc, 'YLoc', yLoc); title({titleText, 'with Scale Ruler'})

Настройте карту, добавив стрелку на север. Стрелка на север - это графический элемент, указывающий на географический Северный полюс.
Используйте значения широты и долготы для позиционирования стрелки на север.
northArrowLat = 42.5; northArrowLon = -70.25; northarrow('Latitude', northArrowLat, 'Longitude', northArrowLon); title({titleText, 'with Scale Ruler and North Arrow'})

Настройте карту, добавив карту вставки. Карта вставки представляет собой небольшую карту в пределах большой карты, которая позволяет визуализировать большую географическую область основной карты. Создайте карту для окружающей области как карту вставки. Используйте axes содержит и позиционирует карту вставки. На карте вставки:
Отображение границ состояния для окружающей области
Постройте красную рамку, чтобы показать протяженность основной карты
h2 = axes('Position', [.15 .6 .2 .2], 'Visible', 'off'); usamap({'PA','ME'}) plabel off; mlabel off setm(h2, 'FFaceColor', 'w'); geoshow(states, 'FaceColor', [0.9 0.9 0.9], 'Parent', h2) plotm(latlim([1 2 2 1 1]), lonlim([2 2 1 1 2]), ... 'Color', 'red', 'LineWidth', 2) title(ax, {titleText, 'with Scale Ruler, North Arrow, and Inset Map'})

Файл boston_placenames.gpx из Бюро географической информации (MassGIS), Содружество Массачусетса, Административная канцелярия служб технологии и безопасности. Для получения дополнительной информации о наборах данных используйте команду type boston_placenames_gpx.txt.
Файл boston_ovr.jpg включает в себя материалы, авторские права на которые принадлежат GeoEye, все права защищены. GeoEye была объединена в корпорацию DigityGlobe 29 января 2013 года. Для получения дополнительной информации о наборе данных используйте команду type boston_ovr.txt.
geoplot | geoscatter | geoshow | northarrow | scaleruler | usamap