matlab 极坐标绘图 在matlab中,用polar画的图形,如何使虚线圆多显示几个?

matlab 极坐标绘图 在matlab中,用polar画的图形,如何使虚线圆多显示几个?,第1张

打开polarm 文件,路径可通过输入 which polar 命令得到。
其中修改下面这段代码,可以控制虚线圆的显示个数。其中rticks 为控制显示个数的参量。每隔01画一个,这样的话应该是画10个,所以将rticks = 10 即可实现。
% draw radial circles
c82 = cos(90 pi / 180);
s82 = sin(90 pi / 180);
rticks = 10; %修改
rinc = (rmax - rmin) / rticks;
for i = (rmin + rinc) : rinc : rmax
hhh = line(xunit i, yunit i, 'LineStyle', ls, 'Color', tc, 'LineWidth', 1,
'HandleVisibility', 'off', 'Parent', cax);
text((i + rinc / 20) c82, (i + rinc / 20) s82,
[' ' num2str(i)], 'VerticalAlignment', 'bottom',
'HandleVisibility', 'off', 'Parent', cax);
end

最简单而常用的命令格式:POLAR(THETA, RHO)
其中,THETA是用弧度制表示的角度,RHO是对应的半径
例:
a=-2pi:001:2pi; %设定角度b=(1-sin(a)); %设定对应角度的半径polar(a, b,'r') %绘图
得到

clc;clear all
for u=0:01:1
p(1)=1; 
t(1)=u;
p(2)=3u; 
t(2)=3cos(2acos(u));
for n1=3:11
    p1=(2n1-1)/(n1-1)p(n1-1)u;
    p2=n1/(n1-1)p(n1-2);
    p(n1)=p1-p2;
    t1=n1up(n1);
    t2=(n1+1)p(n1-1);
    t(n1)=t1-t2;
end;
end
u=0:01:1;
length(u)
length(p)
length(t)
subplot(2,1,1),polar(acos(u),p);
subplot(2,1,2),polar(acos(u),t);

基本思路:

同一个线条对象无法设置渐变颜色,但可以用surface对象的二维视图来变通实现:

t=linspace(0,2pi,100);
r=t;
polar(t,r)
 
x=rcos(t);
y=rsin(t);
hold on
x=[x;x];
y=[y;y];
mesh(x,y,x0,r)
colorbar

其中,先调用polar函数的目的是生成极坐标图的坐标系。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12579819.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存