1

我只是有一个关于 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)

有什么办法可以填充这个极坐标图吗?还是我必须使用上述程序?

任何提示/帮助将不胜感激!

4

1 回答 1

4

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

h=ezpolar('sqrt(abs(2*sin(5*t)))')
hold on;
fill(get(h, 'XData'), get(h, 'YData'), 'k');
于 2012-05-22T20:29:31.380 回答