filterm

Фильтруйте широты и долготы на основе базовой сетки данных

Описание

пример

[latout,lonout] = filterm(lat,lon,Z,R,allowed) фильтрует набор широт и долгот, чтобы включать только те точки данных, которые имеют соответствующее значение в Z равно allowed. R может быть географическим объектом растровой привязки, ссылочным вектором или матрицей привязки.

[latout,lonout,indx] = filterm(___) фильтрует набор широт и долгот, возвращая индексы включенных точек в indx.

Примеры

свернуть все

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

Во-первых повышение загрузите растровые данные и географические камеры ссылки объект. Растр содержит высоты местности относительно среднего уровня моря. Затем задайте координаты равномерно расположенных точек вдоль экватора.

load topo60c
lon = (0:5:360)';
lat = zeros(size(lon));

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

topoASL = topo60c > 0; 
[newlat,newlon] = filterm(lat,lon,topoASL,topo60cR,1);

Создайте объект осей для мира и отобразите данные о повышении. Отобразите все точки вдоль экватора с помощью красных маркеров. Затем отобразите точки, которые находятся над уровнем моря, используя желтые круги.

worldmap world
geoshow(topo60c,topo60cR,'DisplayType','texturemap')
demcmap(topo60c)
geoshow(lat,lon,'DisplayType','point','MarkerEdgeColor','r')
geoshow(newlat,newlon,'DisplayType','point','Marker','o',...
    'MarkerFaceColor','y')

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

свернуть все

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

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

Значения долготы, заданные в виде числового массива.

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

Фильтр, заданный как числовой массив.

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

Пространственная ссылочная информация, заданная как географический объект растровой привязки, ссылочный вектор или матрица привязки.

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

Если R является вектором-ссылкой, это должен быть вектор 1 на 3 с элементами:

[cells/degree northern_latitude_limit western_longitude_limit]

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

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

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

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

Допустимые значения, заданные как числовой массив или вектор символов.

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

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

свернуть все

Широты отфильтрованных точек, возвращенные как числовой массив.

Долготы отфильтрованных точек, возвращенные как числовой массив.

Индексы отфильтрованных точек, возвращенные как числовой массив.

См. также

| |

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