问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

MATLAB绘制极坐标图教程:线图、散点图和直方图详解

创作时间:
作者:
@小白创作中心

MATLAB绘制极坐标图教程:线图、散点图和直方图详解

引用
CSDN
1.
https://m.blog.csdn.net/weixin_44209907/article/details/137866361?biz_id=102&ops_request_misc=&request_id=&utm_term=matlab%20%E6%9E%81%E5%9D%90%E6%A0%87%E5%88%BB%E5%BA%A6

极坐标图是一种常见的数据可视化方式,广泛应用于天线辐射模式、风速分析等领域。本文将详细介绍如何使用MATLAB绘制极坐标线图、散点图和直方图,并通过具体示例展示其应用。

1. 创建极坐标线图

通过极坐标中的天线以可视方式呈现辐射图。加载文件antennaData.mat,该文件包含变量thetarho。变量rho用于测量天线对theta的每个值的辐射强度。通过使用polarplot函数在极坐标中绘制数据图,以可视化方式呈现该辐射图。

load('antennaData.mat')
figure
polarplot(theta,rho)  

在 R2022a 之前,默认情况下极坐标区不包括度符号。要添加度符号,请使用pax = gca获取极坐标区。然后使用**pax.ThetaTickLabel = string(pax.ThetaTickLabel) + char(176)**修改刻度标签。

1.1 多个极坐标线图

使用hold on保留当前极坐标区,然后通过polarplot绘制其他数据图。

rng('default')
noisy = rho + rand(size(rho));
hold on
polarplot(theta,noisy)
hold off  

1.2 为极坐标图添加注释

使用legendtitle之类的注释函数,标记与其他可视化类型类似的极坐标图。

legend('Original','With Noise')
title('Antenna Radiation Pattern')  

1.3 更改极坐标区范围

默认情况下,在极坐标图中,半径的负值将被绘制为正值。使用rlim将 r 坐标轴范围调整为包含负值。

rmin = min(rho);
rmax = max(rho);
rlim([rmin rmax])  

使用thetalim将 theta 坐标轴范围更改为 0 到 180。

thetalim([0 180])  

2. 创建极坐标散点图

在极坐标中绘制风速数据图。加载文件windData.mat,该文件包含变量directionspeedhumidityC。通过使用polarscatter函数在极坐标中绘制数据图,以可视化方式呈现风速图。

load('windData.mat')
polarscatter(direction,speed)  

包括第三个数据输入以改变标记大小并表示第三个维度。

polarscatter(direction,speed,humidity)  

使用格式化输入调整标记显示属性。

polarscatter(direction,speed,humidity,C,'filled')  

3. 创建极坐标直方图

使用polarhistogram函数以可视化方式呈现数据,这将会生成称为风向图的可视化表示。

polarhistogram(direction)  

指定 bin 确定算法。polarhistogram函数具有各种确定 bin 数量和 bin 宽度的算法,可从BinMethod字段中选择。

polarhistogram(direction,'BinMethod','sqrt')  

指定 bin 数量和 bin 宽度。

polarhistogram(direction,24,'BinWidth',.5)  

指定归一化方法并调整显示样式以排除任何填充。

polarhistogram(direction,'Normalization','pdf','DisplayStyle','stairs')  
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号