график

Синтаксис

plot(ts)
plot(ts,specs)

Описание

пример

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

plot(ts,specs) отображает на графике данные timeseries с помощью линейного графика и применяет заданный specs к строкам, маркерам или обоим. Можно также задать пары "имя-значение", чтобы задать 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)

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

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

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

[~,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

Сделайте новый объект временных рядов из столбца 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),

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

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

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

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

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

свернуть все

Введите timeseries, заданный как скаляр.

Спецификации линии, заданные как вектор символов, задающий внешний вид строк, маркеров или обоих. Смотрите LineSpec для получения дополнительной информации. Можно также задать пары "имя-значение", чтобы задать Line Properties.

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

Советы

  • Функция 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.

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

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

    ts = ts.setinterpmethod('zoh');

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

| |

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