Иллюстрированный самоучитель по Matlab

         

Маркировка линий уровня на контурных графиках


К сожалению, контурные графики плохо приспособлены для количественных оценок, если их линии не маркированы. В качестве маркеров используются крестики, рядом с которыми располагаются значения высот. Для маркировки контурных графиков используются команды группы clabel:

clabel(CS.H) — маркирует контурный график с данными в контурной матрице CS и дескрипторами объектов, заданными в массиве Н. Метки вставляются в разрывы контурных линий и ориентируются в соответствии с направлением линий;

clabel (CS.H, V) — маркируются только те уровни, которые указаны в векторе V. По умолчанию маркируются все контуры. Позиции меток располагаются случайным образом;

clabel (CS.H, 'manual') — маркирует контурные графики с установкой положения маркеров с помощью мыши. Нажатие клавиши Enter или кнопки мыши завершает установку маркера. При отсутствии мыши для перехода от одной линии уровня к другой используется клавиша пробела, а для перемещения надписи используются клавиши перемещения курсора;

clabel (CS), clabel (CS.V) и clabel (CS. 'manual') — дополнительные возможности маркировки контурных графиков. При отсутствии аргумента h метки не ориентируются вдоль линий контуров; точную позицию метки отмечает значок «+» (далее на рис. 6.39 показан именно этот вариант).

Пример применения команды clabel приводится ниже:

» [X,Y]=meshgrid([-3:0.1:3]); 

» Z=sin(X)./(X.^2+Y.^2+0.3); 

» C=contour(X.Y.Z.10); 

» colormap(gray) 

» clabel(С)

Рис. 6.38.

Контурный график с маркированными линиями уровня

Рис. 6.38 показывает построение контурного графика с маркированными линиями уровня.

Функция H=cl abel (...) маркирует график и возвращает дескрипторы создаваемых при маркировке объектов класса TEXT (и, возможно, LINE).



Содержание раздела