MATLAB で極座標プロット (POLAR(THETA,RHO)) を使用しています。
半径軸の範囲を 1.5 に固定する簡単な方法はありますか?
デカルト軸の xlim、ylim コマンドに類似したものを探しています。ドキュメントにはまだ何も見つかりませんでした。
MATLAB で極座標プロット (POLAR(THETA,RHO)) を使用しています。
半径軸の範囲を 1.5 に固定する簡単な方法はありますか?
デカルト軸の xlim、ylim コマンドに類似したものを探しています。ドキュメントにはまだ何も見つかりませんでした。
これは私にとってはうまくいきました...半径範囲を30にしたかったので、最初にこれをプロットしました
polar(0,30,'-k')
hold on
この最初にプロットされた点は、グリッド マークの後ろに隠されています。必ず含めるようにしてください
hold off
最後のプロット コマンドの後。
これが私がそれを行うことができた方法です。
MATLAB 極座標プロット (利用可能なハンドル グラフィックス オプションを見ると) には、xlim や ylim のようなものはありません。ただし、最初にプロットされたものが範囲を設定することに気付いたので、次のように [-1 1] プロットに半径範囲 [-.5 .5] の関数をプロットすることができました。
theta = linspace(0,2*pi,100);
r = sin(2*theta) .* cos(2*theta);
r_max = 1;
h_fake = polar(theta,r_max*ones(size(theta)));
hold on;
h = polar(theta, r);
set(h_fake, 'Visible', 'Off');
それはあまり良くないように見えます。もっと良い方法があることを願っていますが、うまくいきます。
簡単な解決策は、偽のグラフを作成し、その色を白に設定することです。
fake=100;
polar(0,fake,'w');
hold on;
real=10;
polar(0,real,'w');
他の誰かがこれに遭遇した場合の解決策は次のとおりです。
Scottie Tとgnoviceが指摘したように、Matlabは基本的に極関数を標準プロットのインターフェイスとして使用しますが、極に見えるように舞台裏で多くの書式設定を行います。極座標プロットのXLimおよびYLimプロパティの値を見ると、それらがデカルト座標でのプロットの文字通りxおよびyの限界であることがわかります。したがって、半径の制限を設定するには、xlimとylim、またはaxisを使用し、設定する値について賢くします。
rlim = 10;
axis([-1 1 -1 1]*rlim);
...これですべてです。Happy Matlabbing :)