matlab之极坐标图polar添加箭头
程序员文章站
2022-05-21 17:47:35
...
在笛卡尔坐标系的图里, 添加箭头可以使用annotation函数, 但是对于极坐标不可以.
在极坐标系里添加箭头分为两种情况:
从原点向外的箭头
这个可以使用matlab自带的compass函数.
deg13=57;
deg14=88;
deg24=97;
deg34=178;
degVector=[deg13,deg14,deg24,deg34];
theta=deg2rad(degVector);
rho=[1,1,1,1];
z=rho.*exp(1i*theta);
compass(z);
如图:
从外面到原点的箭头
这个就比较难了, 只能通过一些其他手段解决.
matlab中有一个函数quiver可以专门在笛卡尔坐标系里画箭头, 但是无法添加到polarplot画出的极坐标图中去.
这时候可以考虑函数polar. 这个函数是polarplot的老版本, 目前已经不推荐使用, 但是可以与笛卡尔坐标系相容.
deg13=57;
deg14=88;
deg24=97;
deg34=178;
degVector=[deg13,deg14,deg24,deg34];
theta=deg2rad(degVector);
rho=[1,1,1,1];
%polarplot(theta,rho,'.r','MarkerSize',25)
h=polar(theta,rho,'.k')
h.MarkerSize=15;
[X,Y] = pol2cart(theta,rho);
hold on
quiver(X,Y,-X,-Y,1.05,'Color','k')
如图:
下一篇: MATLAB|在极坐标里画矢量
推荐阅读