MATLAB绘图/数据的可视化
MATLAB数据可视化是极重要的功能,文章介绍了MATLAB绘图与数据可视化的相关方法,阅读本文读者可以快速掌握MATLAB绘图技巧,在"科研绘图模板"为读者提供了较为完善的三种绘图模板供读者尝试。
绘图的步骤:曲线数据准备(对于二维曲线准备横纵坐标数据,对于三维曲面准备矩阵参变量和对应的Z坐标值);指定图形窗口和子图位置(使用Figure命令指定图形窗口,默认时打开Figure1窗口,使用subplot命令指定当前子图);绘制图形;设置坐标轴和图形注释;对三维图形使用的着色和视点等设置;图形的精细修饰;按指定格式保存或导出图片。
二维绘图
基本绘图函数
plot(y) %绘制以y为纵坐标的二维曲线,y为矩阵时按列对y中数据绘图
plot(x,y)
plot(x1,y1,x2,y2,...) %同一窗口绘制多条二维曲线
多个图形的绘制
%% 同一个窗口多个子图
subplot(m,n,i) %将窗口分成(m*n)幅子图,第i幅为当前幅,编号原则:左上起先从左往右后从上往下
%% 双坐标图
plotyy(x1,y1,x2,y2) %以左、右不同的纵轴绘制两条曲线
%% 同一窗口多次叠绘
%一般调用plot函数都是绘制新图形而不保留旧有图形,使用hold命令可以保留原图形,使多个plot函数在一个坐标系中不断叠加
hold on %使当前坐标系和图形保留(仅保留数据和坐标轴属性)
hold off %使当前坐标系和图形不保留
hold %在上述两个命令间切换
hold all %使当前坐标系和图形保留,并且保留当前线的颜色和样式
%% 指定图形窗口
%使用plot等绘图命令时都是默认打开"Figure 1"窗口,使用figure则可以打开多个窗口
figure(n) %产生新图形窗口
设置图形样式
%% 曲线的线性、颜色和数据点型
plot(x,y,s) %s为字符串,用以设置曲线的线性、颜色和数据点型等。
plot(x,y,'mo-.') %绘制紫红色圆圈标记点划线
%% 设置坐标轴 坐标轴相关命令都是以axis开头
axis auto %使用默认设置
axis([xmin,xmax,ymin,ymax]) %设定坐标范围
axis equal %纵、横坐标采用等长刻度
%% 分割线和坐标框
%坐标框是指坐标系的刻度框 使用box on/box off/box控制
%分割线是指在坐标系中根据坐标轴刻度使用虚线进行分割
grid on %显示分割线 grid off %不显示分割线(默认设置) grid %在二者间切换
%% 图形注释
%图形注释包括设置标题(title)、坐标轴便签(label)、图例(legend)、添加标准元素(annotation)
%MATLAB支持部分tex公式,例如\alpha为自动识别为α
title('title'),legend('s1','s2',...,pos),xlabel('x'),ylabel('y');
text(xt,yt,'s') %在图形的(xt,yt)坐标处书写文字注释
annotation('type',[x1,x2],[y1,y2]) %根据type在指定坐标处添加注释元素,type: rectangle 为矩形,textbox 为文本框,line 为线,arrow 为箭头,textarrow 为带文字箭头,ellipse 为椭圆
线型 实线’-‘,双划线’–‘,虚线’:‘,点划线’-.’
标记 实点. 圆圈o 叉号x 星号* 正方形s 菱形d 五角形p 六边形h 上下左右三角形^ v > <
颜色 红r 绿g 蓝b 黄y 黑k 白w 青色c 紫红m
使用鼠标添加注释文字–当调节text(xt,yt,'s')
位置不方便时可以使用
gtext('s') %用鼠标把字符串放在图形上
gtext({
's1','s2','s3'}) %一次将多个的字符串分行放置在图形上
gtext({
's1';'s2';'s3'}) %一次放置一个字符串分多次放置在图形上
%例如为正弦图形窗口添加文字标注
>> gtext({
'\pi';'2\pi';'3\pi'})
使用鼠标获取图形数据
[x,y]=ginput(n) %用鼠标从图形上获取n个点的坐标(x,y)
特殊图形的绘制
bar(x,y,width,参数) %绘制横纵坐标、宽度分别为x,y,width的柱状图
area(x,y) %绘制横坐标为x,纵坐标为y的面积图;y可以是矩阵(多重面积图);若x省略则横坐标为1:size(y,1)
pie(x,explode,'label') %绘制各元素占总和的百分比
errorbar(X,Y,E) %绘制误差棒
quiver(x,y,u,v) %绘制以(x,y)为起点,横纵坐标为(u,v)的向量场
polar(theta,rho,参数) %绘制极坐标图
contour<