plot

Синтаксис

Описание

пример

plot(ts) строит timeseries данные в ts против времени, интерполируя значения между выборками.

пример

plot(ts,LineSpec) строит timeseries данные с помощью линейного графика и применяют заданный specs к линиям, маркерам или обоим.

Можно также задать аргументы name-value, чтобы задать Line Properties.

Примеры

свернуть все

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

x = [2 5 8 2 11 3 6];
ts1 = timeseries(x,1:7);

ts1.Name = 'Daily Count';
ts1.TimeInfo.Units = 'days';
ts1.TimeInfo.StartDate = '01-Jan-2011';     % Set start date.
ts1.TimeInfo.Format = 'mmm dd, yy';       % Set format for display on x-axis.

ts1.Time = ts1.Time - ts1.Time(1);        % Express time relative to the start date.

plot(ts1)

Figure contains an axes object. The axes object with title Time Series Plot:Daily Count contains an object of type line.

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

load count.dat;
count1 = timeseries(count(:,1),1:24);
count1.Name = 'Oak St. Traffic Count';
count1.TimeInfo.Units = 'hours';
plot(count1,':b')
grid on

Figure contains an axes object. The axes object with title Time Series Plot:Oak St. Traffic Count contains an object of type line.

Получите время максимального значения и добавьте его как событие:

[~,index] = max(count1.Data);
max_event = tsdata.event('peak',count1.Time(index));
max_event.Units = 'hours';

Добавьте событие во временные ряды:

count1 = addevent(count1,max_event);

Замените график на новый, показывающий событие:

plot(count1,'.-b')
grid on

Figure contains an axes object. The axes object with title Time Series Plot:Oak St. Traffic Count contains 2 objects of type line.

Сделайте новый объект временных рядов из столбца 2 того же источника данных:

count2 = timeseries(count(:,2),1:24);
count2.Name = 'Maple St. Traffic Count';
count2.TimeInfo.Units = 'Hours';

Поворот держится, чтобы добавить новые данные в график:

hold on

Метод графика не добавляет метки в сохраненный график. Используйте пары свойства/значения, чтобы настроить маркеры:

plot(count2,'s-m','MarkerSize',6),

Figure contains an axes object. The axes object with title Time Series Plot:Oak St. Traffic Count contains 3 objects of type line.

Метки стираются, поэтому сгенерируйте их вручную:

title('Time Series: Oak Street and Maple Street')
xlabel('Hour of day')
ylabel('Vehicle count')

Добавьте легенду в верхнем левом углу:

legend('Oak St.','Maple St.','Location','northwest')

Figure contains an axes object. The axes object with title Time Series: Oak Street and Maple Street contains 3 objects of type line. These objects represent Oak St., Maple St..

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

свернуть все

Введите timeseriesВ виде скаляра.

Стиль линии, цвет и маркер задается как символ или строка символов. Символы могут появиться в любом порядке. Вы не должны задавать все три характеристики (стиль линии, маркер и цвет). Например, если вы не используете стиль линии и задаете маркер, затем график показывает только маркер и никакую линию.

Пример: '--or' красная пунктирная линия с круговыми маркерами

Стиль линииОписаниеПолучившаяся линия
'-'Сплошная линия

Sample of solid line

'--'Пунктирная линия

Sample of dashed line

':'Пунктирная линия

Sample of dotted line

'-.'Штрих-пунктирная линия

Sample of dash-dotted line, with alternating dashes and dots

МаркерОписаниеПолучившийся маркер
'o'Круг

Sample of circle marker

'+'Знак «плюс»

Sample of plus sign marker

'*'Звездочка

Sample of asterisk marker

'.'Точка

Sample of point marker

'x'Крест

Sample of cross marker

'_'Горизонтальная линия

Sample of horizontal line marker

'|'Вертикальная линия

Sample of vertical line marker

's'Квадрат

Sample of square marker

'd'Ромб

Sample of diamond line marker

'^'Треугольник, направленный вверх

Sample of upward-pointing triangle marker

'v'Нисходящий треугольник

Sample of downward-pointing triangle marker

'>'Треугольник, указывающий вправо

Sample of right-pointing triangle marker

'<'Треугольник, указывающий влево

Sample of left-pointing triangle marker

'p'Пентаграмма

Sample of pentagram marker

'h'Гексаграмма

Sample of hexagram marker

Название цветаКраткое названиеТриплет RGBВнешний вид
'red''r'[1 0 0]

Sample of the color red

'green''g'[0 1 0]

Sample of the color green

'blue''b'[0 0 1]

Sample of the color blue

'cyan' 'c'[0 1 1]

Sample of the color cyan

'magenta''m'[1 0 1]

Sample of the color magenta

'yellow''y'[1 1 0]

Sample of the color yellow

'black''k'[0 0 0]

Sample of the color black

'white''w'[1 1 1]

Sample of the color white

Советы

  • plot функция генерирует заголовки и подписи по осям автоматически. Эти метки:

    • Постройте заголовок — 'Time Series Plot: <name>'

      где <name> строка, присвоенная ts.Name, или по умолчанию, 'unnamed'

    • Метка оси X — 'Time (<units>)'

      где <units> значение ts.TimeInfo.Units поле, который значения по умолчанию к 'seconds'

    • Метка оси Y — '<name>'

      где <name> строка, присвоенная ts.Name, или по умолчанию, 'unnamed'

  • Можно поместить новые данные временных рядов в график временных рядов (установкой  hold on, например, и издание другого timeseries/plot команда). Когда вы добавляете данные в график, заголовок и подписи по осям становятся пустыми строками, чтобы не помечать беспорядок. Можно добавить ваш владеть марками после графического вывода использования title, xlabel, и ylabel команды.

  • События временных рядов, когда задано, отмечены в графике с круговым маркером с красной заливкой. Можно также задать маркеры для всех точек данных с помощью a linespec или назовите/оцените синтаксис в дополнение к любым маркерам события, которые задают ваши данные. Маркеры события строят сверху маркеров, которые вы задаете.

  • Значение присвоено ts.DataInfo.Interpolation.Name управляет типом интерполяции plot метод использует при графическом выводе и передискретизации данных временных рядов. Вызовите timeseries метод setinterpmethod чтобы изменить линейную интерполяцию по умолчанию в нулевой порядок содержат интерполяцию (лестница). Этот метод создает новый timeseries объект, с которым можно перезаписать исходный, если вы хотите. Например, чтобы вызвать временные ряды ts чтобы использовать нулевой порядок содержат интерполяцию, вводят следующее:

    ts = ts.setinterpmethod('zoh');

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

| |

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