MATLAB:polarplot❤️在极坐标系下绘制线条

Posted 没事就要敲代码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB:polarplot❤️在极坐标系下绘制线条相关的知识,希望对你有一定的参考价值。

1 polarplot 函数

  • polarplot(theta,rho) 在极坐标中绘制线条,由 theta 表示弧度角,rho 表示每个点的半径值。输入必须是长度相等的向量或大小相等的矩阵。如果输入为矩阵,polarplot 将绘制 rho 的列对 theta 的列的图。也可以一个输入为向量,另一个为矩阵,但向量的长度必须与矩阵的一个维度相等。

  • polarplot(theta,rho,LineSpec) 设置线条的线型、标记符号和颜色。

  • polarplot(theta1,rho1,...,thetaN,rhoN) 绘制多个 rho,theta 对组。

  • polarplot(theta1,rho1,LineSpec1,...,thetaN,rhoN,LineSpec1) 指定每个线条的线型、标记符号和颜色。

  • polarplot(rho) 按等间隔角度(介于 0 和 2π 之间)绘制 rho 中的半径值。

  • polarplot(rho,LineSpec) 设置线条的线型、标记符号和颜色。

  • polarplot(Z) 绘制 Z 中的复数值。

  • polarplot(Z,LineSpec) 设置线条的线型、标记符号和颜色。

2 示例

2.1 polarplot(theta,rho)

在极坐标中绘制线条,由 theta 表示弧度角,rho 表示每个点的半径值。 这两个输入参数必须是长度相等的向量或大小相等的矩阵。 如果输入为矩阵,polarplot 将绘制 rho 的列对 theta 的列的图。也可以一个输入为向量,另一个为矩阵,但向量的长度必须与矩阵的一个维度相等。

2.1.1 在极坐标系下绘制小花花❀

代码:

clc
clear
theta = 0:0.01:2*pi;
rho = sin(2*theta).*cos(2*theta);
polarplot(theta,rho)

结果展示:

2.1.2 在极坐标系下绘制圆

代码:

clc
clear
theta = 0:0.01:2*pi;
rho = sin(theta).*sin(theta)+cos(theta).*cos(theta);	% 半径始终为 1 
polarplot(theta,rho)

结果展示:

2.1.3 将度转化为弧度进行绘图

代码:

clc
clear
theta = linspace(0,360,50);
rho = theta/10;
theta_radians = deg2rad(theta);		% 度转弧度
polarplot(theta_radians,rho)

结果展示:

2.1.4 按等间隔角度绘制半径值

只指定半径值,不指定角度值。polarplot 将按照等间隔角度(从 0 到 2 π 2\\pi 2π)绘制半径值。在每个数据点处显示一个圆圈标记。

代码:

clc
clear
rho = 10:5:70;
polarplot(rho,'-o')

结果展示:

2.1.5 绘制负半径值

使用负半径值创建极坐标图。默认情况下,polarplot 会将负值反射穿过原点。

代码:

clc
clear
theta = linspace(0,2*pi);
rho = sin(theta);
polarplot(theta,rho)

结果展示:

2.1.5 rlim([r,R])❤️更改半径r轴的范围

更改r轴范围,要在polarplot后使用

代码:

clc
clear
theta = linspace(0,2*pi);
rho = sin(theta);
polarplot(theta,rho)
rlim([-1 1]);		% 更改r轴范围,要在polarplot后使用

结果展示:

2.2 polarplot(theta,rho,LineSpec)

2.2.1 指定极坐标图的线条颜色和线型

代码:

clc
clear
theta = linspace(0,2*pi,25);
rho = 2*theta;
polarplot(theta,rho,'r-d')

结果展示:

2.2.2 创建后指定线条颜色

代码:

clc
clear

% 创建一个极坐标图并返回图形线条对象。
theta = linspace(0,2*pi,25);
rho = 2*theta;
p = polarplot(theta,rho);

% 更改线条颜色和宽度并添加标记。
p.Color = 'magenta';
p.Marker = 'pentagram';
p.MarkerSize = 8;

结果展示:

2.3 polarplot(theta1,rho1,…,thetaN,rhoN)

2.3.1 在极坐标系下绘制多个线条

代码:

clc
clear
theta = linspace(0,6*pi);
rho1 = theta/10;
rho2 = theta/12;
polarplot(theta,rho1,theta,rho2,'--')

结果展示:

2.4 polarplot(Z)

2.4.1 使用复数值创建极坐标图

在极坐标中绘制复数值。在每个点处显示标记,标记间无连接线。

代码:

clc
clear
Z = [-4+3i 3 3+4i 2-4i -5+i -4-2i -2+3i -2 -3i 3i-2i];
polarplot(Z,'*')

结果展示:


相关链接

https://ww2.mathworks.cn/help/matlab/ref/polarplot.html?s_tid=doc_ta

以上是关于MATLAB:polarplot❤️在极坐标系下绘制线条的主要内容,如果未能解决你的问题,请参考以下文章

《University Calculus》-chape4-极坐标与圆锥曲线-极坐标系下的面积与弧长

极坐标系和直角坐标系的异同

用Desmos玩极坐标

在 Python pylab 玫瑰/极坐标图中更改图例标题的字体大小

极坐标图:TypeError:“numpy.float64”对象不能被解释为索引

二维计算几何基础