geoshow

Отобразите данные о широте и долготе карты

Описание

geoshow(lat,lon) проекты и отображения векторы широты и долготы lat и lon использование проекции сохранено в текущей системе координат. Если нет никакой проекции, lat и lon спроектированы с помощью Пластины по умолчанию проекция Carrée.

По умолчанию, geoshow отображения lat и lon как линии. Можно опционально отобразить векторные данные как точки, мультиточки или многоугольники при помощи DisplayType аргумент пары "имя-значение".

пример

geoshow(S) отображает векторные географические особенности, сохраненные в S как точки, мультиточки, линии или многоугольники согласно 'Geometry' поле S.

  • Если S geopoint вектор, geoshape вектор или геоstruct (с 'Lat' и 'Lon' координатные поля), затем geoshow вершины проектов, чтобы сопоставить координаты.

  • Если S mappoint вектор, mapshape вектор или mapstruct (с 'X' и 'Y' поля), затем geoshow вершины графиков как (предварительно спроектированная) карта координируют и выдают предупреждение.

Можно опционально задать правила изображения условными знаками с помощью SymbolSpec аргумент пары "имя-значение".

пример

geoshow(lat,lon,Z) проекты и отображения определенная геолокацию сетка данных, Z. В этом синтаксисе, lat и lon массивы долготы широты M на n. Z массив M на n класса double. Можно опционально отобразить данные как поверхность, mesh, текстурную карту, или очертить при помощи DisplayType аргумент пары "имя-значение".

пример

geoshow(Z,R) проекты и отображения обычная сетка данных, Z, с объектом привязки R. Можно опционально отобразить данные как поверхность, mesh, текстурную карту, или очертить при помощи DisplayType аргумент пары "имя-значение". Если DisplayType 'texturemap', затем geoshow создает поверхность с ZData набор значений к 0.

geoshow(lat,lon,I) и

geoshow(lat,lon,X,cmap) проекты и отображения определенное геолокацию изображение как текстурная карта на поверхности нулевого вертикального изменения. Определенное геолокацию изображение I может быть истинный цвет, шкала полутонов или двухуровневое изображение. X индексируемое изображение с палитрой cmap. Примеры определенных геолокацию изображений включают цветной составной объект от спутникового swath или изображения, на которое первоначально ссылаются к различной системе координат.

geoshow(I,R) и

geoshow(X,cmap,R) проект и отображение изображение, на которое геоссылаются к долготе широты через объект привязки R. Изображение показывается текстурной картой на поверхности нулевого вертикального изменения.

пример

geoshow(filename) проекты и данные об отображениях из файла заданы согласно типу формата файла.

пример

geoshow(___,Name,Value) задает параметры и соответствующие значения, которые изменяют тип отображения или устанавливают свойства графики MATLAB®. Можно использовать имя, пары значения, чтобы установить:

  • Name,Value аргументы

  • Любая линия Графики MATLAB, закрашенная фигура и поверхностные свойства

  • Любые свойства контура Mapping Toolbox™

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

geoshow(ax,___) устанавливает родительские оси на ax.

h = geoshow(___) возвращает указатель на графический объект MATLAB.

Примеры

свернуть все

Отобразите карту мира с помощью Пластины по умолчанию проекция Carree.

figure
geoshow('landareas.shp', 'FaceColor', [0.5 1.0 0.5]);

Настройте пустую карту оси с проекцией и пределами, подходящими для отображения всех 50 состояний.

figure
worldmap('na');

Считайте данные о высоком разрешении США.

states = shaperead('usastatehi', 'UseGeoCoords', true);

Создайте symbolspec, который выбирает цвет красных многоугольников Аляски и Гавайев.

symspec = makesymbolspec('Polygon', ...
   {'Name', 'Alaska', 'FaceColor', 'red'}, ...
   {'Name', 'Hawaii', 'FaceColor', 'red'});

Отобразите все другие состояния, установив свойство FaceColor по умолчанию на синий и свойство EdgeColor по умолчанию к черному цвету.

geoshow(states, 'SymbolSpec', symspec, ...
   'DefaultFaceColor', 'blue', ...
   'DefaultEdgeColor', 'black');

Отобразите карту, с помощью geoshow функция с 'DisplayType' набор параметра к 'TextureMap' .

Загрузите файл MAT, содержащий информацию о карте о корейском полуострове.

load korea

Настройте пустую карту оси с проекцией и пределами для корейского полуострова.

figure;
worldmap(map, refvec)

Отобразите корейскую сетку данных как текстурную карту.

geoshow(gca,map,refvec,'DisplayType','texturemap');
demcmap(map)

Отобразите контур контактной площадки как черную линию.

S = shaperead('landareas','UseGeoCoords',true);
geoshow([S.Lat], [S.Lon],'Color','black');

Отобразите карту, интерпретировав NaNs как прозрачный. Этот пример использует geoshow функция с 'DisplayType' набор параметра к 'surface' .

Карта распределения памяти при загрузке корейского полуострова.

korea = load('korea');
Z = korea.map;

Введите полосу использования нулевых значений NaNs.

Z(80:100,:) = NaN;

Создайте объект растровой привязки.

R = georasterref('RasterSize',size(Z),...
    'Latlim',[30 45], 'Lonlim', [115 135]);

Отобразите мировую карту со значениями NaN, отображенными как прозрачную. Обратите внимание на то, что настройки для ZData и CData гарантируйте, что получившаяся поверхность падает в z == 0 плоскость, вместо того, чтобы быть 3-мерным.

figure; 
worldmap(Z,R)
geoshow(Z,R,'DisplayType','surface','ZData',zeros(size(Z)),'CData',Z)
demcmap(Z)

Загрузите геоид и отображение.

load geoid

Создайте фигуру с проекцией Эккерта.

figure
axesm eckert4; 
framem; gridm;
axis off

Отобразите геоид как текстурную карту.

geoshow(geoid, geoidrefvec, 'DisplayType', 'texturemap');

Создайте шкалу палитры и заголовок.

hcb = colorbar('southoutside');
set(get(hcb,'Xlabel'),'String','EGM96 Geoid Heights in Meters.')

Кашируйте всю землю.

geoshow('landareas.shp', 'FaceColor', 'black');

Создайте фигуру с проекцией Эккерта.

figure
axesm eckert4
axis off

Загрузите геоид и отобразите его как поверхность.

load geoid
h = geoshow(geoid, geoidrefvec, 'DisplayType','surface');

Добавьте свет и материал.

light
material(0.6*[ 1 1 1])

Просмотрите карту как 3-D поверхность.

view(3)
axis normal
tightmap

Загрузите лунное изображение альбедо.

load moonalb

Проект и отображение лунное изображение альбедо с помощью Пластины по умолчанию проекция Carree.

figure
geoshow(moonalb,moonalbrefvec)

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

figure
axesm ortho 
geoshow(moonalb,moonalbrefvec,'DisplayType','texturemap')
colormap(gray(256))
axis off

Разархивируйте USGS 24K файл цифровой модели вертикального изменения (DEM) во временный файл. Тулбокс включает Юг Сан-Франциско 24K файл DEM.

filenames = gunzip('sanfranciscos.dem.gz',tempdir); 
demFilename = filenames{1}; 

Считайте любую точку 1:24,000 файл DEM.

[lat,lon,Z,header,profile] = usgs24kdem(demFilename,2);

Удалите временный файл.

delete(demFilename);

Поскольку никакие отрицательные вертикальные изменения не существуют, перемещают все точки на уровне моря к-1, чтобы окрасить их в синий.

Z(Z==0) = -1;

Вычислите пределы широты и долготы для DEM.

latlim = [min(lat(:)) max(lat(:))] 
latlim = 1×2

   37.6249   37.7504

lonlim = [min(lon(:)) max(lon(:))]
lonlim = 1×2

 -122.5008 -122.3740

Отобразите значения DEM как текстурную карту.

figure
usamap(latlim, lonlim)
geoshow(lat, lon, Z, 'DisplayType','texturemap')
demcmap(Z)
daspectm('m',1)

Наложите черные линии контура на текстурную карту.

geoshow(lat,lon,Z,'DisplayType','contour', ...
  'LineColor','black');

Просмотрите значения DEM в 3-D.

figure
usamap(latlim, lonlim)
geoshow(lat,lon,Z,'DisplayType','surface')
demcmap(Z)
daspectm('m',1)
view(3)

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

свернуть все

Широта или данные о долготе, заданные как числовой вектор или M-by-N числовая матрица.

  • lat и lon векторы, когда используется с синтаксисом geoshow(lat,lon).

  • lat и lon 2D массивы, когда используется с geoshow(lat,lon,Z) синтаксис, geoshow(lat,lon,I) синтаксис или geoshow(lat,lon,X,cmap) синтаксис. Если lat и lon матрицы, они представляют координатные массивы или массив геолокации в географических координатах, и должны быть одного размера с Zi, или X. Если I изображение RGB, lat и lon должны быть матрицы, которые совпадают с первыми двумя размерностями изображения.

lat и lon может содержать встроил NaNs, чтобы разграничить отдельные линии или части многоугольника.

Географические особенности, заданные как географическая структура данных или динамический вектор.

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

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

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

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

Если R GeographicPostingsReference объект, затем 'image' и 'texturemap' значения DisplayType не приняты.

Вектор

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

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

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

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

R задает (невращательный, нескошенный) отношение, в котором каждый столбец сетки данных падает вдоль меридиана и каждой строки падения вдоль параллели. Интерполяция ближайшего соседа используется по умолчанию. NaN возвращен для точек вне пределов сетки или для который lat или lon содержите NaN. Все углы находятся в модулях степеней.

Истинный цвет, шкала полутонов или двухуровневое изображение, заданное как M-by-N-by-3 массив для изображений истинного цвета или M-by-N массив для полутоновых или двухуровневых изображений. lat и lon должен быть M-by-N массивы. Если задано, 'DisplayType' должен быть установлен в 'image'.

Индексируемое изображение с картой цветов, заданной cmap, заданный как M-by-N массив. lat и lon должен быть M-by-N массивы. Если задано, 'DisplayType' должен быть установлен в 'image'.

Карта цветов индексируемого изображения X, заданный как c-by-3 числовая матрица. Существует c, раскрашивает карту цветов, каждый представленный красным, зеленым, и синим пиксельным значением.

Имя файла, заданное как скаляр строки или вектор символов. geoshow автоматически устанавливает DisplayType параметр согласно формату данных.

ФорматDisplayType
Файл форм'point', 'multipoint'строка, или 'polygon'
GeoTIFF'image'
TIFF/JPEG/PNG с файлом привязки 'image'
СЕТКА ASCII ДУГИ'surface' (может быть заменен),
Растр SDTS'surface' (может быть заменен),

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

Родительские оси, заданные как объект осей.

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

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

Пример: 'DisplayType','point'

Правила изображения условными знаками, которые будут использоваться в отображении векторных данных, заданных как разделенная запятой пара, состоящая из 'SymbolSpec' и структура, возвращенная makesymbolspec. Это используется только в векторных данных, хранимых в географических структурах данных. В случаях, где оба SymbolSpec и одно или несколько графических свойств заданы, графические свойства заменяют любые настройки в symbolspec структуре.

Изменить правило изображения условными знаками по умолчанию для Name,Value пара в SymbolSpec структура, снабдите префиксом слово 'Default' к графическому имени свойства.

Тип графического дисплея для данных, заданных как разделенная запятой пара, состоящая из 'DisplayType' и одно из следующих значений.

Тип данныхТип дисплеяТип свойства
Вектор'point'маркер линии
'multipoint'маркер линии
'line'строка
'polygon'закрашенная фигура
Изображение'image'поверхность
Сетка'surface'поверхность
'mesh'поверхность
'texturemap'поверхность
'contour'контур

Допустимые значения DisplayType зависьте от формата данных о карте. Например, если данные о карте являются определенным геолокацию изображением или изображением, на которое геоссылаются, то единственное допустимое значение DisplayType 'image'. Различные типы дисплея поддерживают различные географические типы классов данных:

Тип дисплеяПоддерживаемые типы классов
Изображениеlogicaluint8uint16, и double
Поверхностьsingle и double
Текстурная картаВсе числовые типы и logical

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

свернуть все

Родительские оси, возвращенные как указатель на графический объект MATLAB или, в случае многоугольников, модифицированного объекта закрашенной фигуры. Если имя геоstruct или файла форм вводится, geoshow возвращает указатель на hggroup объект с одним дочерним элементом на функцию в геоstruct или файле форм, исключая любые функции, которые полностью обрезаются далеко. В случае геоstruct многоугольника или файла форм, каждый дочерний элемент является модифицированным объектом закрашенной фигуры; в противном случае это - объект линии.

Советы

  • При вызове shaperead считать файлы, которые содержат координаты в широте и долготе, убедиться задать shaperead пара аргумента 'UseGeoCoords',true. Если вы не включаете этот аргумент, shaperead создаст mapstruct, с координатными полями пометил X и Y вместо Lon и Lat. В таких случаях, geoshow принимает, что геоstruct является на самом деле mapstruct, содержащим спроектированные координаты, предупреждает и вызывает mapshow отобразить данные о геоstruct, не проектируя его.

  • Если вы не хотите geoshow чтобы чертить сверху существующей карты, создайте новую фигуру или подграфик прежде, чем вызвать его.

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

  • Если вы отображаете многоугольник, не устанавливайте 'EdgeColor' к любому 'flat' или 'interp'. Эта комбинация может привести к предупреждению.

  • При проектировании данных на карту оси, geoshow использует проекцию, сохраненную осями карты. При отображении на постоянном клиенте осей это создает Пластину по умолчанию проекция Carrée с масштабным коэффициентом 180/pi, включение прямого считывания координат в градусах.

  • geoshow может обычно заменяться displaym. Однако существуют ограничения, где отображение конкретных объектов затронуто. Смотрите комментарии под updategeostruct для получения дополнительной информации.

  • Когда вы отображаете растровые данные в карте с помощью geoshow, столбцы около восточного или западного ребра могут не отобразиться. Это редко примечательно, кроме тех случаев, когда растр очень крупен относительно отображенной области. Чтобы включать дополнительные столбцы в отображение, это может помочь:

    • Измените размер сетки к более прекрасной mesh.

    • Убедитесь границы ячейки и сопоставьте пределы, выравниваются.

    • Расширьте пределы карты.

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

Функции

Объекты

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