![8280083723bfb734653fc91675b620e0.png](https://i-blog.csdnimg.cn/blog_migrate/df9149c4e5071981f13351a25c362ed4.jpeg)
本文示例说明了如何在极坐标中创建折线图,散点图和直方图。它们还显示了如何注释和更改极坐标图上的轴边界。
创建极坐标折线图
以极坐标显示来自天线的辐射方向模式。加载文件antennaData.mat
,其中包含变量theta
和rho
。变量rho
是天线针对每个theta
的辐射强度。通过使用polarplot
函数在极坐标中绘制数据来可视化此辐射图。
load('antennaData.mat')
figure
polarplot(theta,rho)
![e6168d11b2fb723a9420bfd987766d74.png](https://i-blog.csdnimg.cn/blog_migrate/5c42b012310743a65565a9dbafc4b0a9.png)
多个极坐标折线图
使用hold on
保留目前的极轴,继续使用polarplot
绘制其他数据。
rng('default')
noisy = rho + rand(size(rho));
hold on
polarplot(theta,noisy)
hold off
![e8c9b7e0641763d200722794412ec279.png](https://i-blog.csdnimg.cn/blog_migrate/91e56917366de4b4fc5e55f58c3064cb.png)
标注极坐标图
与其他可视化类型一样,使用标注函数legend
和title
来标记极坐标图。
legend('Original','With Noise')
title('Antenna Radiation Pattern')
![db74230494378adc7abf8f64a0b227ab.png](https://i-blog.csdnimg.cn/blog_migrate/f1e68f97fe0aef1e7cc45136345e3e9f.png)
更改极轴边界
默认情况下,在极坐标图中将半径的负值绘制为正值。使用rlim
调整R轴边界,包括负值。
rmin = min(rho);
rmax = max(rho);
rlim([rmin rmax])
![328245b768839efa2f47e41f499bebf1.png](https://i-blog.csdnimg.cn/blog_migrate/f47addfe2d484d8b2f2402570f9a90fd.png)
使用 thetalim
,更改theta轴边界为0和180。
thetalim([0 180])
![e8d499ca582a7e4a3369e68cbc58399a.png](https://i-blog.csdnimg.cn/blog_migrate/3e9aa8a48538bf29f94e2846729297e9.png)
创建极坐标散点图
用极坐标绘制风速数据。加载文件windData.dat
,其中包括变量direction
,speed
,humidity
,和C
。通过使用polarscatter
函数在极坐标中绘制数据来可视化风速。
load('windData.mat')
polarscatter(direction,speed)
![6e0206f22d51e031c5a66e342f0e3cfc.png](https://i-blog.csdnimg.cn/blog_migrate/f006ee989b49c3ffa2c6f3add087d6ca.png)
加入第三个输入数据,改变标记大小来表示第三维度。
polarscatter(direction,speed,humidity)
![f28fda57e9caf685460b4d70bef791bd.png](https://i-blog.csdnimg.cn/blog_migrate/06a3baa909c52d492a6584de07337b29.png)
使用格式输入来调整标记显示属性。
polarscatter(direction,speed,humidity,C,'filled')
![8d773014c318fc002df6a233d9da4ab8.png](https://i-blog.csdnimg.cn/blog_migrate/ef6cbce6211bc2ea5ad9197a203534fe.png)
创建极坐标直方图
使用polarhistogram
函数可视化数据,该函数产生可视化表示,称为玫瑰图(英文称为wind rose chart,因为这种图经常用来观察风力风速的模式)。
polarhistogram(direction)
![83741194111a99b86f41c8705b24132f.png](https://i-blog.csdnimg.cn/blog_migrate/598784afec4e1e0dd38f02424f3f4f32.png)
指定分箱算法。该polarhistogram
函数提供多种分箱宽度和分箱数量确定算法,供您在BinMethod
中选择。
polarhistogram(direction,'BinMethod','sqrt')
![483376eb3786e6a0cb8d67ce98ce637e.png](https://i-blog.csdnimg.cn/blog_migrate/056390f4fe7009d9e9952d66716d103c.png)
指定分箱的数量和宽度。
polarhistogram(direction,24,'BinWidth',.5)
![209a007a8d7d7c5fb5773c7605f436c2.png](https://i-blog.csdnimg.cn/blog_migrate/ebca9f546a9cc1859ddcf2d6bffca943.png)
指定规范化方法并调整显示样式,排除任何填充效果。
polarhistogram(direction,'Normalization','pdf','DisplayStyle','stairs')
![a02557748da4bf23939293d5e37f3698.png](https://i-blog.csdnimg.cn/blog_migrate/c4fe6e610976458ec6a424f09b1fe2ba.png)
注:本文根据MATLAB官网内容修改而成。
我推荐给你以下的视频教程,特点是没有PPT,不掺水,直接编程环境下的实操课程: 用360分钟了解MATLAB编程《MATLAB编程360》视频课程:
MATLAB编程360 - 网易云课堂study.163.comstudy.163.com