MATLAB - 填充ezpolar图

时间:2012-05-22 19:52:12

标签: matlab fill polar-coordinates

我只是对MatLab有一个简短的问题。

说我们有等式:

r ^ 2 = 2 sin(5t)

我知道我可以通过写作填写极​​地情节,比如说:

t = linspace(0,2*pi,200);
r = sqrt(abs(2*sin(5*t)));
x = r.*cos(t);
y = r.*sin(t);
fill(x,y,'k')

但是我说使用ezpolar而不是通过给出函数句柄上面的等式然后输入:

ezpolar(function handle)

有什么方法可以填补这个极地情节吗?或者我是否必须使用上述程序?

非常感谢任何提示/帮助!

1 个答案:

答案 0 :(得分:4)

您可以使用ezpolar,然后修改结果图。如果从ezpolar查看返回的句柄,您将看到它是在轴上绘制的线本身。可以提取该线对象的点,然后用于在同一轴上放置新的多边形。好处是,你可以保留所有漂亮的极地标签。

h=ezpolar('sqrt(abs(2*sin(5*t)))')
hold on;
fill(get(h, 'XData'), get(h, 'YData'), 'k');