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

Ada*_*erg 15 matlab plot histogram polar-coordinates

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

是否有一种简单的方法来确定径向轴的范围,比如1.5?

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

小智 8

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

polar(0,30,'-k')
hold on
Run Code Online (Sandbox Code Playgroud)

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

hold off
Run Code Online (Sandbox Code Playgroud)

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


Tim*_*omb 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');
Run Code Online (Sandbox Code Playgroud)

这看起来不太好,希望有更好的方法,但它的工作原理.

  • 我想出了同样的解决方案.不幸的是,他们没有将极坐标图定义为基本图类型,而是创建绘制轴以将数据转换为x和y的补丁.看看polar.m的代码,你会看到. (2认同)

小智 6

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

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

real=10;
polar(0,real,'w');
Run Code Online (Sandbox Code Playgroud)