Маркировка линий уровня на контурных графиках
К сожалению, контурные графики плохо приспособлены для количественных оценок, если их линии не маркированы. В качестве маркеров используются крестики, рядом с которыми располагаются значения высот. Для маркировки контурных графиков используются команды группы 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(C)
Рис. 6.38. Контурный график с маркированными линиями уровня
Рисунок 6.38 показывает построение контурного графика с маркированными линиями уровня.
Функция H=clabel(…) маркирует график и возвращает дескрипторы создаваемых при маркировке объектов класса TEXT (и, возможно, LINE).