在MATLAB极坐标图上修复径向轴

时间:2008-10-22 15:32:35

标签: matlab plot histogram polar-coordinates

我在MATLAB中使用极坐标图(POLAR(THETA,RHO))。

是否有一种简单的方法可以将径向轴的范围固定为1.5?

我正在寻找类似于笛卡尔坐标轴的xlim,ylim命令的东西。尚未在文档中找到任何内容。

4 个答案:

答案 0 :(得分:8)

这对我有用...我希望半径范围变为30,所以我首先绘制了这个

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

然后绘制了我真正感兴趣的内容。这个第一个绘制点隐藏在网格标记后面。只要确保包括

hold off

在你最后的绘图命令之后。

答案 1 :(得分:6)

以下是我能够做到的。

MATLAB极坐标图(如果查看可用的H​​andle Graphics选项)没有像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');

这看起来不太好,希望有更好的方法,但它确实有效。

答案 2 :(得分:6)

简单的解决方案是制作假图并将其颜色设置为白色。

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

real=10;
polar(0,real,'w');

答案 3 :(得分:4)

如果有其他人遇到此问题,请点击 解决方案:

正如 Scottie T gnovice 所指出的,Matlab基本上使用极性函数作为标准接口情节,但在幕后有很多格式,使它看起来像极地。查看极坐标图的XLim和YLim属性的值,您会注意到它们实际上是笛卡尔坐标系中绘图的x和y限制。因此,要设置半径限制,请使用xlim和ylim或axis,并对您设置的值进行智能化处理:

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

......这就是它的全部。快乐的Matlabbing:)