- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MATLABでbodeコマンド(ラベル変えたい))
MATLABでボード線図のy軸ラベルを変える方法は?
このQ&Aのポイント
- MATLABを使ってボード線図を書く際に、bode()コマンドを使用している場合、y軸ラベルを変える方法を知りたいです。
- 現在、グラフのy軸ラベルをプロパティで変える方法を使用していますが、この方法だとプログラムを再実行すると最初の状態に戻ってしまいます。
- プログラム上でy軸ラベルを指定したいのですが、ゲイン特性と位相特性の両方のグラフの軸を変える方法がわかりません。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
bode関数ってaxesのハンドルを取りだす方法ないんですね… http://www.mathworks.co.jp/jp/help/control/ref/bode.html?searchHighlight=bode しょうがないので、2つ方法を提示します。どちらかお好きな方で。 1. bode関数の中身を読むと、 [mag,phase] = bode(sys) の形でmag、phaseにゲインと位相が出てくるみたいなんで、 それを使ってsubplotで自分でグラフを描く。 figure; subplot(2,1,1);semilogx(frequency,mag);ylabel(~); subplot(2,1,2);semilogx(frequency,phase);ylabel(~); みたいな。 2. h=get(gcf,'Children'); でfigure内にある子オブジェクト(この場合axes)のハンドルを取得出来るので、 ylabel(h(1),~); ylabel(h(2),~); とすればそれぞれの軸にylabelを設定できます。h(1)とh(2)のどっちがどっちのグラフになってるかはわかりませんが、 多分h(1)がゲインの方だと思います。 参考になれば幸いです。
お礼
ありがとうございます。 できました。