15

MATLAB で極座標プロット (POLAR(THETA,RHO)) を使用しています。

半径軸の範囲を 1.5 に固定する簡単な方法はありますか?

デカルト軸の xlim、ylim コマンドに類似したものを探しています。ドキュメントにはまだ何も見つかりませんでした。

4

4 に答える 4

8

これは私にとってはうまくいきました...半径範囲を30にしたかったので、最初にこれをプロットしました

polar(0,30,'-k')
hold on

この最初にプロットされた点は、グリッド マークの後ろに隠されています。必ず含めるようにしてください

hold off

最後のプロット コマンドの後。

于 2009-08-31T18:40:17.967 に答える
6

これが私がそれを行うことができた方法です。

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');

それはあまり良くないように見えます。もっと良い方法があることを願っていますが、うまくいきます。

于 2008-10-22T16:06:52.207 に答える
6

簡単な解決策は、偽のグラフを作成し、その色を白に設定することです。

fake=100;
polar(0,fake,'w');
hold on;

real=10;
polar(0,real,'w');
于 2012-09-12T03:04:45.820 に答える
4

他の誰かがこれに遭遇した場合解決策は次のとおりです。

Scottie Tgnoviceが指摘したように、Matlabは基本的に極関数を標準プロットのインターフェイスとして使用しますが、極に見えるように舞台裏で多くの書式設定を行います。極座標プロットのXLimおよびYLimプロパティの値を見ると、それらがデカルト座標でのプロットの文字通りxおよびyの限界であることがわかります。したがって、半径の制限を設定するには、xlimとylim、またはaxisを使用し、設定する値について賢くします。

rlim = 10;
axis([-1 1 -1 1]*rlim);

...これですべてです。Happy Matlabbing :)

于 2010-01-02T09:57:08.403 に答える