一、概述
一般地,在MATLAB中进行数据可视化的过程主要有如下步骤:
(1) 准备需要绘制在MATLAB图形窗体中的数据。
(2) 创建图形窗体,并且选择绘制数据的区域。一个MATLAB图形窗体可以包含多个绘图区域。
(3)使用MATLAB的绘图函数绘制图形或者曲线。
(4) 设置曲线的属性,例如线型、线宽等。
(5) 设置绘图区域的属性,并且添加数据网格线。
(6)为绘制的图形添加标题、轴标签或者标注文本等。
(7) 打印或者导出图形。
二、二维绘图
1.绘制函数plot
将向量或矩阵中的数据绘制在图形窗体中,并指定不同的线型和色彩。plot函数还可以一次绘制多条曲线。
例: MATLAB基本绘图指令的使用——
x = 0:pi/1000:2pi; %准备绘制的数据
y = sin(2x+pi/4); %准备绘制的数据
plot(x,y) %使用默认的设置将数据x和y绘制在图形窗体中
注:默认绘制出蓝色的曲线。
plot函数同时绘制多条曲线:
plot(x,y,x,y+1,x,y+2)
2.直接将矩阵的数据绘制
利用plot函数可以直接将矩阵的数据绘制在图形窗体中,矩阵的每一列数据作为一条曲线绘制在窗体中。
例 :绘制矩阵数据——
A = pascal(5)
A =
1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
plot(A)
3.设置曲线的样式属性
MATLAB预先设置了不同的曲线样式属性值,分别控制曲线的色彩、线型和标识符,见下表——
上图例子中的plot函数——
‘-.rv’, ‘r-.v’, ‘vr-. ’都是“红色、点划线、下三角”曲线。
绘制出的曲线是这样的——
操作补充——
为了能够更加直观地观察数据曲线,可以使用grid命令将轴的坐标线绘制出来,具体的做法为grid on
执行该命令后,图形窗体的轴将显示坐标网格线!如下图——
(若不希望出现坐标网格线,则可以执行grid off命令)
更精细的“修图”操作见PPT
4.使用子图
MATLAB的图形窗体可以划分为多个图形显示区域,每个图形显示区域彼此独立,用户可以根据自己的需要把数据绘制在指定的区域中,这种特性就是MATLAB图形窗体的子图功能。
使用子图的方法是使用subplot函数选择绘制区域。
subplot(m,n,p)
其中,m和n为将图形窗体分割成的行数和列数,p为选定的窗体区域的序号,以行元素优先顺序排列。
5.图形编辑器
MATLAB不仅能够显示数据和图形,而且还可以利用图形窗体中的工具对图形对象进行编辑,这时的图形窗体需要进入到编辑模式。
在编辑模式下,可以向图形窗体中的对象添加文本、箭头、直线等,还可以利用编辑工具完成图形对象的编辑工作。
进入图形编辑模式有以下几种方法——
①执行图形窗体中“Tool”菜单下的“Edit Plot”命令。
②单击图形窗体工具栏中选择对象按钮 。
三、格式化绘图
1.添加标题(title)
添加图形的标题(图名)需要使用title函数,基本用法为:
title(‘string’)
%字符串string为图形窗体的标题,该标题将被自动地设置在轴的正中顶部。
2.添加图例(legend)
图例默认绘制在轴的右上角处,其中包括绘制在轴内曲线的 色彩、样式和时标 ,同时在绘制图例的地方为每一个曲线添加简要的说明文字,便于用户了解数据曲线的信息。
添加轴的图例需要使用函数legend,基本语法为
legend(‘string1’, ‘string2’…)
%其中,字符串string1、string2为图例的说明性文本。
例如——
legend(‘y=sin(t)’,‘y=sin(t-pi/2)’,‘y=sin(t-pi)’)
3.添加坐标轴标签(label)
坐标轴的标签可以用来说明与坐标轴有关的信息,也可以包含各种需要添加的信息,如坐标轴数据的单位、物理意义等。
MATLAB可以为不同的坐标轴添加不同的坐标信息。一般地,可以使用xlabel、ylabel和zlabel函数分别为图形窗体的X轴、Y轴和Z轴添加轴标签。
以X轴为例,基本语法如下:
xlabel(‘string’)
%其中,string就是坐标轴的标签。坐标轴的标签自动与坐标轴居中对齐。
e.g.
plot(sin(0:pi/100:pi))
xlabel(‘X轴数据’);ylabel(‘Y轴数据’)
输出——
4.添加文本注释(text)
文本注释是由创建图形的用户添加的说明行文字,这些文字可以用来说明数据曲线的细节特点,比如,需要特别注意的数据点。
text函数的基本语法为:
text(x, y, ‘string’)
% 其中,x和y是文本注释添加的 起始点坐标值 ,该坐标值使用当前轴系的单位设置。
四、各式各样的图形函数
1.条形图
bar 绘制二维垂直条形图
bar3 绘制三维垂直条形图
barh 绘制二维水平条形图
bar3h 绘制三维水平条形图
2.直方图
3.饼图
pie(x) —— x中的每一个数据对应饼图中的一个扇区。
pie(a,b) ——从一个饼图中分离出一个或多个饼片,b是与a同尺寸的矩阵,b中非零元素把与a对应位置的饼分离出来。
pie3 —— 绘制三维饼图。
打印出二维饼图与分离饼图如下:
还有很多花花的图~见PPT!
五、基本三维绘图
三维图形的表现能力要强于二维图形,在很多时候需要使用MATLAB绘制三维图形的能力。
输出结果——
函数plot3能够将X、Y、Z坐标绘制在三维的空间,基本语法如下:
plot3(xdata, ydata, zdata, ‘clm’, …)