Main Content

sigmaoptions

シグマ プロット オプションの一覧を作成

    説明

    sigmaoptions コマンドを使用して、SigmaOptions オブジェクトを作成し、シグマ プロットの外観をカスタマイズします。また、このコマンドを使用して、シグマ プロットを作成する MATLAB® セッションの [プロット基本設定] の設定をオーバーライドすることもできます。

    作成

    説明

    plotoptions = sigmaoptions は、sigmaplot コマンドで使用するプロット オプションの既定のセットを返します。これらのオプションを使用して、コマンド ラインからシグマ プロットの外観をカスタマイズすることができます。同じ外観のプロットを生成するスクリプトを記述する場合、スクリプトを実行する MATLAB セッションの設定にかかわらず、この構文が有用です。

    plotoptions = sigmaoptions('cstprefs') は、Control System Toolbox™ 基本設定エディターで選択したオプションでプロット オプションを初期化します。エディターの詳細については、ツールボックス基本設定を参照してください。プロット オプションを少しだけ変更し、その他は既定の設定を使用する場合、この構文が有用です。この構文を使用するスクリプトは、異なる設定のセッションで実行すると、異なる結果が生じる場合があります。

    プロパティ

    すべて展開する

    周波数単位。以下のいずれかの値として指定。

    • 'Hz'

    • 'rad/s'

    • 'rpm'

    • 'kHz'

    • 'MHz'

    • 'GHz'

    • 'rad/nanosecond'

    • 'rad/microsecond'

    • 'rad/millisecond'

    • 'rad/minute'

    • 'rad/hour'

    • 'rad/day'

    • 'rad/week'

    • 'rad/month'

    • 'rad/year'

    • 'cycles/nanosecond'

    • 'cycles/microsecond'

    • 'cycles/millisecond'

    • 'cycles/hour'

    • 'cycles/day'

    • 'cycles/week'

    • 'cycles/month'

    • 'cycles/year'

    周波数スケール。'log' または 'linear' として指定します。

    振幅単位。'dB' または絶対値 'abs' として指定します。

    振幅のスケール。'log' または 'linear' として指定します。

    入出力 (I/O) ペアのグループ化。次のいずれかとして指定します。

    • 'none' — 入出力のグループ化は行われません。

    • 'inputs' — 入力のみをグループ化します。

    • 'outputs' — 出力のみをグループ化します。

    • 'all' — すべての I/O ペアをグループ化します。

    入力ラベルのスタイル。次のフィールドをもつ構造体として指定します。

    • FontSize — フォント サイズ。0 より大きいスカラー値としてポイント単位で指定します。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。1 ポイントは 1/72 インチです。

    • FontWeight — 文字の太さ。'Normal' または 'bold' として指定します。MATLAB は、FontWeight プロパティを使用して、システムで利用できるフォントから 1 つのフォントを選択します。すべてのフォントに太字があるとは限りません。そのため、太字フォントを指定しても標準フォントの太さと変わらない場合があります。

    • FontAngle — 文字の傾斜。'Normal' または 'italic' として指定します。すべてのフォントに両方のフォント スタイルがあるとは限りません。そのため、イタリック フォントでも標準フォントと見た目が変わらない場合があります。

    • Color — テキストの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0.4,0.4,0.4] を含む濃いグレーです。

    • Interpreter — テキスト インタープリター。次の値のいずれかとして指定します。

      • 'tex' — TeX マークアップのサブセットを使用して文字を解釈します。これは、Interpreter の既定値です。

      • 'latex' — LaTeX マークアップを使用して文字を解釈します。

      • 'none' — リテラル文字を表示します。

    出力ラベルのスタイル。次のフィールドをもつ構造体として指定します。

    • FontSize — フォント サイズ。0 より大きいスカラー値としてポイント単位で指定します。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。1 ポイントは 1/72 インチです。

    • FontWeight — 文字の太さ。'Normal' または 'bold' として指定します。MATLAB は、FontWeight プロパティを使用して、システムで利用できるフォントから 1 つのフォントを選択します。すべてのフォントに太字があるとは限りません。そのため、太字フォントを指定しても標準フォントの太さと変わらない場合があります。

    • FontAngle — 文字の傾斜。'Normal' または 'italic' として指定します。すべてのフォントに両方のフォント スタイルがあるとは限りません。そのため、イタリック フォントでも標準フォントと見た目が変わらない場合があります。

    • Color — テキストの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0.4,0.4,0.4] を含む濃いグレーです。

    • Interpreter — テキスト インタープリター。次の値のいずれかとして指定します。

      • 'tex' — TeX マークアップのサブセットを使用して文字を解釈します。これは、Interpreter の既定値です。

      • 'latex' — LaTeX マークアップを使用して文字を解釈します。

      • 'none' — リテラル文字を表示します。

    入力の表示の切り替え。{'on'}{'off'} または複数の要素をもつ cell 配列として指定します。

    出力の表示の切り替え。{'on'}{'off'} または複数の要素をもつ cell 配列として指定します。

    タイトルのテキストとスタイル。次のフィールドをもつ構造体として指定します。

    • String — ラベル テキスト。文字ベクトルとして指定します。既定では、プロットは '特異値プロット' というタイトルになります。

    • FontSize — フォント サイズ。0 より大きいスカラー値としてポイント単位で指定します。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。1 ポイントは 1/72 インチです。

    • FontWeight — 文字の太さ。'Normal' または 'bold' として指定します。MATLAB は、FontWeight プロパティを使用して、システムで利用できるフォントから 1 つのフォントを選択します。すべてのフォントに太字があるとは限りません。そのため、太字フォントを指定しても標準フォントの太さと変わらない場合があります。

    • FontAngle — 文字の傾斜。'Normal' または 'italic' として指定します。すべてのフォントに両方のフォント スタイルがあるとは限りません。そのため、イタリック フォントでも標準フォントと見た目が変わらない場合があります。

    • Color — テキストの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0,0,0] で指定された黒です。

    • Interpreter — テキスト インタープリター。次の値のいずれかとして指定します。

      • 'tex' — TeX マークアップのサブセットを使用して文字を解釈します。これは、Interpreter の既定値です。

      • 'latex' — LaTeX マークアップを使用して文字を解釈します。

      • 'none' — リテラル文字を表示します。

    X 軸のラベル テキストとスタイル。次のフィールドをもつ構造体として指定します。

    • String — ラベル テキスト。文字ベクトルとして指定します。既定では、軸は周波数単位 FreqUnits に基づいたタイトルになります。

    • FontSize — フォント サイズ。0 より大きいスカラー値としてポイント単位で指定します。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。1 ポイントは 1/72 インチです。

    • FontWeight — 文字の太さ。'Normal' または 'bold' として指定します。MATLAB は、FontWeight プロパティを使用して、システムで利用できるフォントから 1 つのフォントを選択します。すべてのフォントに太字があるとは限りません。そのため、太字フォントを指定しても標準フォントの太さと変わらない場合があります。

    • FontAngle — 文字の傾斜。'Normal' または 'italic' として指定します。すべてのフォントに両方のフォント スタイルがあるとは限りません。そのため、イタリック フォントでも標準フォントと見た目が変わらない場合があります。

    • Color — テキストの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0,0,0] で指定された黒です。

    • Interpreter — テキスト インタープリター。次の値のいずれかとして指定します。

      • 'tex' — TeX マークアップのサブセットを使用して文字を解釈します。これは、Interpreter の既定値です。

      • 'latex' — LaTeX マークアップを使用して文字を解釈します。

      • 'none' — リテラル文字を表示します。

    Y 軸のラベル テキストとスタイル。次のフィールドをもつ構造体として指定します。

    • String — ラベル テキスト。文字ベクトルの cell 配列として指定します。既定では、軸は振幅単位 MagUnits に基づいたタイトルになります。

    • FontSize — フォント サイズ。0 より大きいスカラー値としてポイント単位で指定します。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。1 ポイントは 1/72 インチです。

    • FontWeight — 文字の太さ。'Normal' または 'bold' として指定します。MATLAB は、FontWeight プロパティを使用して、システムで利用できるフォントから 1 つのフォントを選択します。すべてのフォントに太字があるとは限りません。そのため、太字フォントを指定しても標準フォントの太さと変わらない場合があります。

    • FontAngle — 文字の傾斜。'Normal' または 'italic' として指定します。すべてのフォントに両方のフォント スタイルがあるとは限りません。そのため、イタリック フォントでも標準フォントと見た目が変わらない場合があります。

    • Color — テキストの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0,0,0] で指定された黒です。

    • Interpreter — テキスト インタープリター。次の値のいずれかとして指定します。

      • 'tex' — TeX マークアップのサブセットを使用して文字を解釈します。これは、Interpreter の既定値です。

      • 'latex' — LaTeX マークアップを使用して文字を解釈します。

      • 'none' — リテラル文字を表示します。

    目盛りラベルのスタイル。次のフィールドをもつ構造体として指定。

    • FontSize — フォント サイズ。0 より大きいスカラー値としてポイント単位で指定します。既定のフォント サイズは、特定のオペレーティング システムとロケールによって異なります。1 ポイントは 1/72 インチです。

    • FontWeight — 文字の太さ。'Normal' または 'bold' として指定します。MATLAB は、FontWeight プロパティを使用して、システムで利用できるフォントから 1 つのフォントを選択します。すべてのフォントに太字があるとは限りません。そのため、太字フォントを指定しても標準フォントの太さと変わらない場合があります。

    • FontAngle — 文字の傾斜。'Normal' または 'italic' として指定します。すべてのフォントに両方のフォント スタイルがあるとは限りません。そのため、イタリック フォントでも標準フォントと見た目が変わらない場合があります。

    • Color — テキストの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0,0,0] で指定された黒です。

    プロットでのグリッド表示の切り替え。'off' または 'on' として指定します。

    グリッド ラインの色。RGB 3 成分として指定します。既定の色は、RGB 3 成分 [0.15,0.15,0.15] で指定された薄いグレーです。

    X 軸の範囲の選択モード。次のいずれかの値として指定します。

    • 'auto' — 自動範囲選択を有効にします。プロットされたデータの全範囲に基づきます。

    • 'manual' — 軸の範囲を手動で指定します。軸の範囲を指定するには、XLim プロパティを設定します。

    Y 軸の範囲の選択モード。次のいずれかの値として指定します。

    • 'auto' — 自動範囲選択を有効にします。プロットされたデータの全範囲に基づきます。

    • 'manual' — 軸の範囲を手動で指定します。軸の範囲を指定するには、YLim プロパティを設定します。

    X 軸の範囲。[min,max] 形式の 2 要素ベクトルの cell 配列として指定します。

    Y 軸の範囲。[min,max] 形式の 2 要素ベクトルの cell 配列として指定します。

    オブジェクト関数

    sigmaplot追加のプロット カスタマイズ オプションを使用して周波数応答の特異値をプロットする

    すべて折りたたむ

    たとえば、プロット ハンドルを使用して周波数単位を Hz に変更し、グリッドをオンにします。

    5 つの状態をもつランダムな状態空間モデルを生成し、プロット ハンドル h をもつシグマ プロットを作成します。

    rng("default")
    sys = rss(5);
    h = sigmaplot(sys);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    単位を Hz に変更し、グリッドをオンにします。そのためには、setoptions を使用してプロット ハンドル h のプロパティを編集します。

    setoptions(h,'FreqUnits','Hz','Grid','on');

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    setoptions を呼び出すと、シグマ プロットは自動的に更新されます。

    または、sigmaoptions コマンドを使用して、必要なプロット オプションを指定することもできます。最初に、ツールボックス基本設定に基づいてオプション セットを作成します。

    p = sigmaoptions('cstprefs');

    周波数単位を Hz に設定してグリッドを有効にすることで、オプション セットのプロパティを変更します。

    p.FreqUnits = 'Hz';
    p.Grid = 'on';
    sigmaplot(sys,p);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    同じオプション セットを使用して、同じカスタマイズを使用する複数のシグマ プロットを作成できます。独自のツールボックス基本設定によっては、得られるプロットはこのプロットの外観と異なる場合があります。明示的に設定したプロパティ (この例では、Grid および FreqUnits) のみが、ツールボックス基本設定をオーバーライドします。

    この例では、タイトルに 15 ポイントの赤いテキストを使用するシグマ プロットを作成します。このプロットは、それを生成する MATLAB セッションの設定にかかわらず、外観が同じになります。

    最初に、sigmaoptions を使用して既定のオプション セットを作成します。

    plotoptions = sigmaoptions;

    次に、オプション セット plotoptions の必要なプロパティを変更します。

    plotoptions.Title.FontSize = 15;
    plotoptions.Title.Color = [1 0 0];
    plotoptions.FreqUnits = 'Hz';
    plotoptions.Grid = 'on';

    次に、オプション セット plotoptions を使用してシグマ プロットを作成します。

    h = sigmaplot(tf(1,[1,1]),plotoptions);

    Figure contains an axes object. The axes object contains an object of type line. This object represents untitled1.

    plotoptions は固定のオプション セットで開始されるため、プロットの結果は MATLAB セッションのツールボックス基本設定とは独立したものになります。

    この例では、次の連続時間 SISO 動的システムのシグマ プロットを作成します。次に、グリッドをオンにして、プロットの名前を変更し、周波数スケールを変更します。

    sys(s)=s2+0.1s+7.5s4+0.12s3+9s2.Continuous-time SISO dynamic system

    伝達関数 sys を作成します。

    sys = tf([1 0.1 7.5],[1 0.12 9 0 0]);

    次に、sigmaoptions を使用してオプション セットを作成し、必要なプロット プロパティを変更します。

    plotoptions = sigmaoptions;
    plotoptions.Grid = 'on';
    plotoptions.FreqScale = 'linear';
    plotoptions.Title.String = 'Singular Value Plot of Transfer Function';

    カスタムのオプション セット plotoptions を使用してシグマ プロットを作成します。

    h = sigmaplot(sys,plotoptions);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    sigmaplot はシステム ダイナミクスに基づいてプロット範囲を自動的に選択します。

    この例では、入力/出力データから同定されたパラメトリック モデルの周波数に対する SV を、同じデータを使用して同定されたノンパラメトリック モデルと比較します。データに基づいて、パラメトリック モデルとノンパラメトリック モデルを同定します。

    データを読み込み、tfest および spa をそれぞれ使用してパラメトリック モデルとノンパラメトリック モデルを作成します。

    load iddata2 z2;
    w = linspace(0,10*pi,128);
    sys_np = spa(z2,[],w);
    sys_p = tfest(z2,2);

    spatfest には System Identification Toolbox™ ソフトウェアが必要です。モデル sys_np はノンパラメトリックと同定されたモデルで、sys_p はパラメトリックと同定されたモデルです。

    グリッドをオンにするオプション セットを作成します。次に、このオプション セットを使用して両方のシステムを含むシグマ プロットを作成します。

    plotoptions = sigmaoptions;  
    plotoptions.Grid = 'on';
    h = sigmaplot(sys_p,'b--',sys_np,'r--',w,plotoptions);
    legend('Parametric Model','Non-Parametric model');

    Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent Parametric Model, Non-Parametric model.

    次の 2 つの入力、2 つの出力の動的システムについて考えます。

    H(s)=[03ss2+s+10s+1s+52s+6].

    H(s) および I + H(s) の特異値応答をプロットします。プロット オプション セットを使用して適切なタイトルを設定します。

    H = [0, tf([3 0],[1 1 10]) ; tf([1 1],[1 5]), tf(2,[1 6])];
    opts1 = sigmaoptions;
    opts1.Grid = 'on';
    opts1.Title.String = 'Singular Value Plot of H(s)';
    h1 = sigmaplot(H,opts1);

    Figure contains an axes object. The axes object contains 2 objects of type line. This object represents H.

    入力 2 を使用してタイプ I + H(s) の変更された SV をプロットします。

    opts2 = sigmaoptions;
    opts2.Grid = 'on';
    opts2.Title.String = 'Singular Value Plot of I+H(s)';
    h2 = sigmaplot(H,[],2,opts2);

    Figure contains an axes object. The axes object contains 2 objects of type line. This object represents 1+H.

    バージョン履歴

    R2008a で導入