Main Content

nyquistoptions

ナイキスト線図オプションのリストを作成する

説明

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

作成

説明

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

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

プロパティ

すべて展開する

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

  • 'Hz'

  • 'rad/second'

  • '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'

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

位相単位。それぞれ度またはラジアンに変更する 'deg' または 'rad' として指定します。

負の周波数に対する応答の表示の切り替え。'on' または 'off' として指定します。

信頼領域をプロットするために使用する標準偏差の数。スカラーとして指定します。これは、同定されたモデルにのみ適用できます。

信頼領域をプロットするために使用する信頼楕円の周波数間隔。スカラーとして指定します。これは、同定されたモデルにのみ適用できます。既定値は 5 です。これは信頼楕円が 5 番目周波数サンプルごとに表示されることを意味します。

入出力 (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 — ラベル テキスト。文字ベクトルとして指定します。既定では、軸のタイトルは '実軸' です。

  • 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 配列として指定します。既定では、軸のタイトルは '虚軸' です。

  • 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 配列として指定します。

オブジェクト関数

nyquistplot追加のプロット カスタマイズ オプションをもつナイキスト線図

すべて折りたたむ

この例では、プロット ハンドルを使用して位相単位をラジアンに変更し、グリッドをオンにします。

5 つの状態をもつランダムな状態空間モデルを生成し、プロット ハンドル h をもつナイキスト線図を作成します。

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

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

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

setoptions(h,'PhaseUnits','rad','Grid','on');

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

setoptions を呼び出すと、ナイキスト線図は自動的に更新されます。

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

plotoptions = nyquistoptions('cstprefs');

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

plotoptions.PhaseUnits = 'rad';
plotoptions.Grid = 'on';
nyquistplot(sys,plotoptions);

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

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

次数 2 および 6 の同定された状態空間モデルの周波数応答と 50 番目の周波数サンプルごとに表示される 1-std の標準偏差信頼領域を比較します。

同定されたモデル データを読み込み、n4sid を使用して状態空間モデルを推定します。次に、ナイキスト線図をプロットします。

load iddata1
sys1 = n4sid(z1,2); 
sys2 = n4sid(z1,6);
w = linspace(10,10*pi,256);
h = nyquistplot(sys1,sys2,w);

Figure contains an axes object. The axes object with title From: u1 To: y1 contains 2 objects of type line. These objects represent sys1, sys2.

両方のモデルは、データを約 76%近似します。しかし sys2 では、プロットに示されるように、周波数応答の不確かさが特にナイキスト周波数近くで高くなります。このことを確認するには、ナイキスト応答が表示されている点のサブセットに信頼領域を表示します。

setoptions(h,'ConfidenceRegionDisplaySpacing',50,...
             'ShowFullContour','off');

Figure contains an axes object. The axes object with title From: u1 To: y1 contains 2 objects of type line. These objects represent sys1, sys2.

信頼領域の表示を有効にするには、プロットを右クリックして [特性][信頼領域] を選択します。

この例では、3 つの入力、3 つの出力および 3 つの状態をもつ MIMO 状態空間モデルについて考えます。ナイキスト線図を作成し、等高線の一部のみを表示して、グリッドをオンにします。

MIMO 状態空間モデル sys_mimo を作成します。

J = [8 -3 -3; -3 8 -3; -3 -3 8];
F = 0.2*eye(3);
A = -J\F;
B = inv(J);
C = eye(3);
D = 0;
sys_mimo = ss(A,B,C,D);
size(sys_mimo)
State-space model with 3 outputs, 3 inputs, and 3 states.

プロット ハンドル h を使ってナイキスト線図を作成し、利用可能なオプションのリストに対して getoptions を使用します。

h = nyquistplot(sys_mimo);

Figure contains 9 axes objects. Axes object 1 with title From: In(1) contains an object of type line. This object represents sys\_mimo. Axes object 2 contains an object of type line. This object represents sys\_mimo. Axes object 3 contains an object of type line. This object represents sys\_mimo. Axes object 4 with title From: In(2) contains an object of type line. This object represents sys\_mimo. Axes object 5 contains an object of type line. This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

p = getoptions(h)
p =

                         FreqUnits: 'rad/s'
                          MagUnits: 'dB'
                        PhaseUnits: 'deg'
                   ShowFullContour: 'on'
          ConfidenceRegionNumberSD: 1
    ConfidenceRegionDisplaySpacing: 5
                        IOGrouping: 'none'
                       InputLabels: [1x1 struct]
                      OutputLabels: [1x1 struct]
                      InputVisible: {3x1 cell}
                     OutputVisible: {3x1 cell}
                             Title: [1x1 struct]
                            XLabel: [1x1 struct]
                            YLabel: [1x1 struct]
                         TickLabel: [1x1 struct]
                              Grid: 'off'
                         GridColor: [0.1500 0.1500 0.1500]
                              XLim: {3x1 cell}
                              YLim: {3x1 cell}
                          XLimMode: {3x1 cell}
                          YLimMode: {3x1 cell}

setoptions を使用して必要なカスタマイズでプロットを更新します。

setoptions(h,'ShowFullContour','off','Grid','on');

Figure contains 9 axes objects. Axes object 1 with title From: In(1) contains an object of type line. This object represents sys\_mimo. Axes object 2 contains an object of type line. This object represents sys\_mimo. Axes object 3 contains an object of type line. This object represents sys\_mimo. Axes object 4 with title From: In(2) contains an object of type line. This object represents sys\_mimo. Axes object 5 contains an object of type line. This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

setoptions を呼び出すと、ナイキスト線図は自動的に更新されます。MIMO モデルの場合、nyquistplot はナイキスト線図の配列を生成し、各プロットは 1 組の I/O の周波数応答を表示します。

バージョン履歴

R2012a で導入