ドキュメンテーション

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

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

最大値の時間を取得してイベントとして追加します。

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

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