ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

plot

クラス: timeseries

構文

plot(ts)
plot(tsc.tsname)
plot(ts,linespec)
plot(tsc.tsname,linespec)
plot(ts,Name, Value)
plot(tsc.tsname,Name, Value)

説明

plot(ts) は、ゼロ次ホールド ('zoh') または線形内挿 (既定の設定) を使ってサンプル間に値を内挿し、時間に対する timeseries データ ts をプロットします。現在の座標軸にプロットが表示されます。タイトルおよび座標軸が存在しない場合は、MATLAB® によって作成されます。

plot(tsc.tsname) は、tscollection (tsc) の一部である timeseries オブジェクト tsname をプロットします。

plot(ts,linespec) は、線グラフを使用して timeseries データをプロットし、指定した linespec を線またはマーカー、あるいはその両方に適用します。

plot(tsc.tsname,linespec) は、timeseries コレクションの一部である timeseries オブジェクトを線グラフとしてプロットし、指定した linespec を線またはマーカー、あるいはその両方に適用します。

plot(ts,Name, Value) は、lineseries properties に指定された値を使用して、時系列データの線グラフをプロットします。

plot(tsc.tsname,Name, Value) は、lineseries properties に対して指定された値を使用して、指定された timeseries コレクションの一部である timeseries の線グラフをプロットします。

ヒント

  • timeseries/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');

入力引数

ts

timeseries オブジェクト。

tsc

tscollection

tsname

tscollection 内の timeseries オブジェクトの名前。

指定した開始日で時系列オブジェクトをプロットする

時系列オブジェクトを作成し、開始日を設定して、開始日に相対的に時間ベクトルをプロットします。

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)

同じ座標軸上に 2 つの時系列オブジェクトをプロットする

交通量の調査データから 2 つの時系列オブジェクトを作成し、同じ座標軸上に順番にプロットします。イベントを系列に追加すると、自動的に赤色のマーカーで表示されます。

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

% Obtain time of maximum value and add it as an event:
[~,index] = max(count1.Data);
max_event = tsdata.event('peak',count1.Time(index));
max_event.Units = 'hours';
% Add the event to the time series:
count1 = addevent(count1,max_event);
% Replace plot with new one showing the event:
plot(count1,'.-b'), grid on

% Make a new ts object from column 2 of the same data source:
count2=timeseries(count(:,2),1:24);
count2.Name = 'Maple St. Traffic Count';
count2.TimeInfo.Units = 'Hours';
% Turn hold on to add the new data to the plot:
hold on
% The plot method does not add labels to a held plot.
% Use property/value pair to customize markers:
plot(count2,'s-m','MarkerSize',6),

% Labels are erased, so generate them manually:
title('Time Series: Oak Street and Maple Street')
xlabel('Hour of day')
ylabel('Vehicle count')
% Add a legend in the upper left:
legend('Oak St.','Maple St.','Location','northwest')

参考

| | | |

この情報は役に立ちましたか?