Построение графика с маркерами

Добавление маркеров к линейному графику может быть полезным способом отличить несколько строк или подсветить конкретные точки данных. Добавьте маркеры одним из этих способов:

  • Включайте символ маркера в строчку с дополнительными параметрами, такую как plot(x,y,'-s').

  • Задайте свойство Marker как пару "имя-значение", такую как plot(x,y,'Marker','s').

Для списка опций маркера смотрите Поддерживаемые Символы маркера.

Добавление маркеров к линейному графику

Постройте график. Отобразите маркер в каждой точке данных включением строчки с дополнительными параметрами при вызывании функции plot. Например, используйте '-o' для сплошной линии с круговыми маркерами.

x = linspace(0,10,100);
y = exp(x/10).*sin(4*x);
plot(x,y,'-o')

Если вы задаете символ маркера и не задаете стиль линии, то plot отображает только маркеры без строки, соединяющей их.

plot(x,y,'o')

Также можно добавить маркеры в строку путем установки свойства Marker как пары "имя-значение". Например, plot(x,y,'Marker','o') строит график с круговыми маркерами.

Определение размера маркера и цвета

Постройте график с маркерами. Настройте маркеры путем установки этих аргументов пары "имя-значение" использования свойств с функцией plot:

  • 'MarkerSize' - Размер маркера, который задан как положительное значение.

  • MarkerEdgeColor - Цвет контура маркера, который задан как название цвета или триплет RGB.

  • 'MarkerFaceColor' - Внутренний цвет маркера, который задан как название цвета или триплет RGB.

Задайте цвета с помощью или вектора символов названия цвета, такие как 'red', или триплета RGB, такие как [0.4 0.6 0.7]. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1].

x = linspace(0,10,50);
y = sin(x);
plot(x,y,'-s','MarkerSize',10,...
    'MarkerEdgeColor','red',...
    'MarkerFaceColor',[1 .6 .6])

Управление размещением маркеров вдоль строки

Постройте график с 1 000 точек данных, добавьте маркеры звездочек и управляйте положениями маркера с помощью свойства MarkerIndices. Установите свойство на индексы точек данных, где вы хотите отобразить маркеры. Отобразите маркер каждая десятая точка данных, начиная с точки First Data.

x = linspace(0,10,1000);
y = exp(x/10).*sin(4*x);
plot(x,y,'-*','MarkerIndices',1:10:length(y))

Отображение маркеров в максимальных и минимальных точках данных

Создайте вектор случайных данных и найдите индекс минимальных и максимальных значений. Затем постройте график данных. Отобразите красные маркеры в минимальных и максимальных значениях данных путем установки свойства MarkerIndices на вектор индексных значений.

x = 1:100;
y = rand(100,1);
idxmin = find(y == max(y));
idxmax = find(y == min(y));
plot(x,y,'-p','MarkerIndices',[idxmin idxmax],...
    'MarkerFaceColor','red',...
    'MarkerSize',15)

Вернитесь к местоположениям маркера по умолчанию

Измените местоположения маркера, затем вернитесь назад к местоположениям по умолчанию.

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

x = linspace(0,10,25);
y = x.^2;
p = plot(x,y,'-s');
p.MarkerSize = 10;
p.MarkerIndices = 1:5:length(y);

Сбросьте свойство MarkerIndices к значению по умолчанию, которое является вектором всех индексных значений от 1 до количества точек данных.

p.MarkerIndices = 1:length(y);

Поддерживаемые символы маркера

ЗначениеОписание
'o'Круг
'+'Знак «плюс»
'*'Звездочка
'.'Точка
'x'Крест
square' или 's'Квадрат
'diamond' или 'd'Ромб
'^'Треугольник, направленный вверх
'v'Нисходящий треугольник
'>'Треугольник, указывающий вправо
'<'Треугольник, указывающий влево
pentagram' или 'p'Пятиконечная звезда (пентаграмма)
'hexagram' or 'h'Шестиконечная звезда (гексаграмма)
'none'Никакие маркеры

Строчка с дополнительными параметрами не поддерживает опции маркера, которые являются больше чем одним символом. Используйте одну символьную альтернативу или установите свойство Marker вместо этого.

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

Функции

Свойства