当前位置:首页 >> 自然科学 >>

第三讲 MATLAB数据和函数的可视化


第三讲 数据和函数的可视化

第三讲 数据和函数的可视化
数据可视化的目的: 通过图形,从一堆杂乱的离散数据中观察数据间 的内在关系 感受由图形所传递的内在本质

第三讲 数据和函数的可视化
3.1 引导 3.2 二维曲线绘图 3.3 三维绘图的基本操作

3.1 引导
3.1.1 离散数据和离散函数的可视化 3.1.2 连续函数的可视化 3.1.3 可视化的一般步骤

3.1.1 离散数据和离散函数的可视化
二元实数标量对(x,y)可以用平面上一个点表示 二元实数向量对(x,y)可以用平面上一组点表示 对于离散实函数y=f(x),取x为递增序列,求出 对应的y序列,组成二元向量对。用直角坐标中 的点序列表示,即离散函数的可视化

3.1.1 离散数据和离散函数的可视化
用图形表示离散函数 y = ( n ? 6) n=0:12; %产生一组自变量数据 产生一组自变量数据 y=1./abs(n-6); %计算相应点的函数值 计算相应点的函数值 plot(n,y,'r*','MarkerSize',20) %用红花标出数据点 用红花标出数据点 grid on %画坐标方格 画坐标方格
?1

3.1.1 离散数据和离散函数的可视化
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 2 4 6 8 10 12

3.1.2 连续函数的可视化
连续函数的可视化也必须建立在离散数据上 为表现连续性,常用的处理方法:
– –

对区间进行更细的分割,计算更多的点 两点之间用直线连接,近似表现

注意:自变量的采样点数应足够多,如采样点数 不足不能真实地反映原函数。

3.1.2 连续函数的可视化
用图形表示连续调制波形 y = sin( t ) sin(9t ) t1=(0:11)/11*pi; %在0~pi之间取11个采样点 pi之间取11个采样点 之间取11 在 y1=sin(t1).*sin(9*t1); t2=(0:100)/100*pi;%在0~pi之间取101个采样点 pi之间取101个采样点 之间取101 在 y2=sin(t2).*sin(9*t2); subplot(2,2,1),plot(t1,y1,'r.'),axis ([0,pi,-1,1]),title('子图 (1)') 子图

3.1.2 连续函数的可视化
subplot(2,2,2),plot(t2,y2,'r.'),axis ([0,pi,-1,1]),title('子图 (2)') 子图 subplot(2,2,3),plot(t1,y1,t1,y1,'r.') axis([0,pi,-1,1]),title('子图 (3)') 子图 subplot(2,2,4),plot(t2,y2) axis([0,pi,-1,1]),title('子图 (4)') 子图

3.1.2 连续函数的可视化
子 子 (1) 1 0.5 0 -0.5 -1 0 1 2 子 子 (3) 1 0.5 0 -0.5 -1 0 1 2 3 1 0.5 0 -0.5 -1 0 1 2 3 3 1 0.5 0 -0.5 -1 0 1 2 子 子 (4) 3 子 子 (2)

3.1.2 连续函数的可视化
用数据点来表现连续函数,描述能力差 子图1、3的失真大,因为采样点的个数太少 plot指令的默认处理方法:把离散数据点用直线 连接成为连续曲线

3.1.3 可视化的一般步骤
1. 数据准备 2. 选定图形窗及子图位置 3. 调用绘图指令 4. 设置轴的范围和坐标方格线 5. 图形注释 6. 着色、明暗、灯光、材质处理(三维图形)

3.2 二维曲线绘图
最重要、最基本的指令是plot 3.2.1 plot的调用格式 3.2.2 曲线的颜色、线型和数据点形 3.2.3 坐标、刻度和分格线 3.2.4 图形标识 3.2.5 多次叠绘和多子图 3.2.6 交互式图形指令

3.2.1 plot的调用格式 的调用格式
1. plot(X,’s’) X为实向量——一条连续曲线(下标为横坐标,元素值 为纵坐标) X为实矩阵——一组曲线(按列绘制每列元素值相对其 下标的曲线,曲线数=列数) X为复矩阵——一组曲线(按列分别以实部为横坐标, 虚部为纵坐标,曲线数=列数) s字符串指定线型、颜色和数据点形,可缺省

3.2.1 plot的调用格式 的调用格式
2. plot(X,Y,’s’) XY为同长向量——一条曲线(X横,Y纵) X为向量,Y为矩阵且有一维与X等长——多条不 同颜色的曲线(X为共同的横坐标) X为矩阵,Y为向量——多条不同颜色的曲线(Y 为共同的纵坐标) XY同维矩阵——X、Y对应列为横、纵坐标(曲 线的条数等于矩阵的列数)

3.2.1 plot的调用格式 的调用格式
3. plot(X1,Y1,’s1’,X2,Y2,’s2’,…) 绘制多组曲线,每组格式与上一格式相同

3.2.1 plot的调用格式 的调用格式
plot指令演示 t=(0:pi/50:2*pi)’; k=0.4:0.1:1; Y=cos(t)*k; plot(t,Y) plot(t),plot(Y),plot(Y,t) %101×1的列向量 %1×7的行向量 %101×7的矩阵 %绘图

3.2.1 plot的调用格式 的调用格式
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 1 2 3 4 5 6 7

3.2.1 plot的调用格式 的调用格式
【例6.2-2】用图形表示连续调制波形 及其包络线。(图 6.2-2) t=(0:pi/100:pi)'; y1=sin(t)*[1,-1]; y2=sin(t).*sin(9*t); t3=pi*(0:9)/9; y3=sin(t3).*sin(9*t3); plot(t,y1,'r:',t,y2,'b',t3,y3,'bo') axis([0,pi,-1,1])

3.2.1 plot的调用格式 的调用格式
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.5 1 1.5 2 2.5 3

3.2.1 plot的调用格式 的调用格式
x2 y2 采用模型 + = 1 画一组椭圆 a 2 25 ? a 2 th = [0:pi/50:2*pi]'; %长度为 长度为101的列向量 的列向量 长度为 a = [0.5:.5:4.5]; %长度为 的行向量 长度为9的行向量 长度为 X = cos(th)*a; %(101x9)的矩阵 ( ) Y = sin(th)*sqrt(25-a.^2);%(101x9)的矩阵 ( ) plot(X,Y),axis(‘equal’), %是坐标轴等长刻度 是坐标轴等长刻度 xlabel(‘x’), ylabel(‘y’) %书写坐标名 书写坐标名 title(‘A set of Ellipses’) %书写图名 书写图名

3.2.1 plot的调用格式 的调用格式
A set of Ellipses 4 3 2 1 0 -1 -2 -3 -4 -6 -4 -2 0 x 2 4 6 y

3.2.2 曲线的颜色、线型和数据点形 曲线的颜色、
1. 颜色和线型 b—蓝 m—品红 - —实线 g—绿 y—黄 :—虚线 r—红 k—黑 c—青 w—白

-.—点划线 -- —双划线

3.2.2 曲线的颜色、线型和数据点形 曲线的颜色、
2. 数据点形 . —实心黑点 ^—向上三角 v—向下三角 o—空心圆 x—叉号

+—十字符 <—向左三角 d—菱形 p—五角星

*—星号 >—向右三角 h—六角星 s—方块

3.2.3 坐标、刻度和分格线 坐标、
MATLAB一方面采用一系列缺省设置,所以通常 我们不需要控制细节就可以画出满意的图形 另一方面提供高层指令修改缺省设置,使图形更 符合用户的习惯和爱好

3.2.3 坐标、刻度和分格线 坐标、
1. 坐标控制 axis auto 使用缺省设置 axis off 取消轴背景 axis(V) 人工设定坐标范围 V=[x1,x2,y1,y2,z1,z2] V=[-4,4,-1,3] axis normal 缺省矩形坐标系 axis equal 横、纵轴等长刻度 axis square 产生正方形坐标系 axis image 横、纵轴等长刻度,且坐标紧贴数据范围 axis tight 把数据范围直接设为坐标范围

3.2.3 坐标、刻度和分格线 坐标、
【例6.2-4】观察各种轴控制指令的影响。演示采用长轴为3.25,短轴为1.15的椭圆。注 意:采用多子图(图6.2-4)表现时,图形形状不仅受“控制指令”影响,而且受整 个图面“宽高比”及“子图数目”的影响。 t=0:2*pi/99:2*pi; x=1.15*cos(t);y=3.25*sin(t); subplot(2,3,1),plot(x,y),axis normal,grid on, title('Normal and Grid on') subplot(2,3,2),plot(x,y),axis equal,grid on,title('Equal') subplot(2,3,3),plot(x,y),axis square,grid on,title('Square') subplot(2,3,4),plot(x,y),axis image,box off, title('Image and Box off') subplot(2,3,5),plot(x,y),axis image fill,box off title('Image and Fill') subplot(2,3,6),plot(x,y),axis tight,box off,title('Tight')

3.2.3 坐标、刻度和分格线 坐标、
Normal and Grid on 4 2 0 -2 -4 -2 0 2 2 0 -2 -2 0 2 Equal 4 2 0 -2 -4 -2 0 Tight 2 0 -2 -1 0 1 -1 0 1 2 Square

Image and Box off 2 0 -2 -1 0 1 1 0.5 0 -0.5 -1

Image and Fill

3.2.3 坐标、刻度和分格线 坐标、
2. 分格线和坐标框 grid on/off 画出/不画分格线 grid 切换(状态翻转) box on/off 使当前坐标呈封闭式/开启式 box 切换(状态翻转) 缺省设置为不画分格线、封闭式

3.2.4 图形标识
图形标识包括:图名(Title)、坐标轴名 (Label)、图形注释(Text)和图例(Legend) 它们的最简格式: title(‘s’) 书写图名 xlabel(‘s’) 横坐标轴名 ylabel(‘s’) 纵坐标轴名 legend(‘s1’,’s2’,…) 线型、颜色、数据点的图例 text(x,y,’s’) 在图形(x,y)坐标处标注释

Clf;t=0:pi/50:2*pi y=sin(t); plot(t,y) axis([0,2*pi,-1.2,1.2]) text(pi/2,1,’/fontsize{16}/leftarrow/itsin(t)/fontname{隶书} 极大值‘) title(‘y=sin(t)’) xlabel(‘t’) ylabel(‘sin(t)’)

3.2.5 多次叠绘和多子图
1. 多次叠绘 在已经存在的图上再绘制一条或多条曲线 hold on hold off hold 保持图形和坐标轴,准备绘制新曲线 取消叠绘 在两种状态间切换

注意成对使用,否则会影响其他图形的绘制

3.2.5 多次叠绘和多子图
利用hold绘制离散信号通过零阶保持器后产生的 波形 t=2*pi*(0:20)/20; y=cos(t).*exp(-0.4*t); stem(t,y,‘g’); %绘制离散信号火柴杆图 绘制离散信号火柴杆图 hold on; stairs(t,y,‘r’); %绘制阶梯形曲线图 绘制阶梯形曲线图 hold off

3.2.5 多次叠绘和多子图

1 0.8 0.6 0.4 0.2 0 -0.2 -0.4

0

1

2

3

4

5

6

7

3.2.5 多次叠绘和多子图
2.双纵坐标图 把同一自变量的两个不同量纲、不同数量级的函数量的 变化绘制在同一张图上。 plotyy(X1,Y1,X2,Y2)以左右不同纵轴绘制两条曲线 plotyy(X1,Y1,X2,Y2,FUN)以左右不同纵轴绘制成FUN指定 形式的两条曲线 plotyy(X1,Y1,X2,Y2,FUN1,FUN2)以左右不同纵轴绘制成 FUN1、FUN2指定的不同形式的两条曲线 FUN、FUN1、FUN2是二维绘图命令。

3.2.5 多次叠绘和多子图
3. 多子图 在一个图形窗里布置几幅独立的子图 subplot(m,n,k) 选择m×n幅子图中的第k幅为当前子图 子图顺序:左上为1,向右向下编号 子图间独立,所有绘图指令可在子图中运用 再想画整幅图,先用clf指令 subplot(‘position’,[left bottom width height])产生子图位置 由人工指定.

3.2.5 多次叠绘和多子图
演示subplot指令对图形窗的分割 clf;t=(pi*(0:1000)/1000)'; y1=sin(t);y2=sin(10*t); y12=sin(t).*sin(10*t); subplot(2,2,1),plot(t,y1); axis([0,pi,-1,1])

3.2.5 多次叠绘和多子图
subplot(2,2,2),plot(t,y2); axis([0,pi,-1,1]) subplot('position',[0.2,0.05,0.6,0.4 5]) % plot(t,y12,'b-',t,[y1,y1],'r:');axis([0,pi,-1,1])

3.2.5 多次叠绘和多子图
1 0.5 0 -0.5 -1 0 1 0.5 0 -0.5 -1 1 2 3 1 0.5 0 -0.5 -1 0 1 2 3

0

0.5

1

1.5

2

2.5

3

3.2.6获取二维图形数据的指令 获取二维图形数据的指令
1.ginput [x,y]=ginput(n) 用鼠标从二维图形上获取n个点的数据坐 标(x,y)。 其他指令是把数据表现在图上,而ginput确是从图上获 取数据。 该指令仅适用于二维图形。 n必须为正整数,它表示用户通过鼠标在图上获得的数 据点个数。 指令中的x,y存放所取点的坐标

指令具体操作方法: 指令运行后,会把当前图形从后台调到前台, 同时鼠标变为十字叉; 移动鼠标,使十字叉移到待取坐标点; 点击鼠标左键,便获得数据; 重复上面操作,直到取玩n个点后,图形窗 退回后台,机器回到ginput执行前的环境。

采用图解法求(x+2)x-1的解。 clf; x=-1:0.01:5; y=(x+2).^x-2; plot(x,y); grid on [x,y]=ginput(1);

3.3 三维绘图的基本操作
3.3.1 三维线图指令plot3 3.3.2 三维网线图和曲面图

3.3.1 三维线图指令 三维线图指令plot3
plot3的使用格式与plot类似 plot3(X,Y,Z,’s’) plot3(X1,Y1,Z1,’s1’,X2,Y2,Z2,’s2’,…) X,Y,Z为同维向量——一条三维曲线(以X,Y,Z的对应
元素为x,y,z坐标画三维曲线)

X,Y,Z为同维矩阵——一组曲线(以对应列元素值绘制
一组三维曲线,曲线数=列数)

3.3.1 三维线图指令 三维线图指令plot3
plot3的简单绘图 t=(0:0.02:2)*pi;x=sin(t);y=cos(t); z=cos(2*t); plot3(x,y,z,'b-',x,y,z,'bd'), view([-82,58]),box on, %视点控制 视点控制
view([az,el])通过方位角、俯视角设置视点 通过方位角、 通过方位角 view([az,el])通过直角坐标设置视点 通过直角坐标设置视点

legend('链','宝石 链 宝石') 宝石

3.3.1 三维线图指令 三维线图指令plot3
链 宝 宝

1 1 0.5 0.5 0 -0.5 -1 1 0.5 0 -0.5 -1 -0.5 0

-1

3.3.2 三维网线图和曲面图
网线图和曲面图的绘制比曲线复杂: 绘图数据的准备 三维图形的色彩、明暗、光照和视点的处理

3.3.2 三维网线图和曲面图
1. 三维图形的数据准备 画函数z=f(x,y)所代表的三维曲面,需准备的数据: 确定x,y的取值范围和间隔, x=x1:dx:x2;y=y1:dy:y2; 构成xy平面上的自变量“格点”矩阵, [X,Y]=meshgrid(x,y); 计算自变量采样“格点”上的函数值,Z=f(X,Y)

3.3.2 三维网线图和曲面图
2. 网线图和曲面图的基本指令格式 mesh(Z)/surf(Z) 以下标为自变量画网线图/曲面图 mesh(X,Y,Z)/surf(X,Y, Z) 最常用的调用格式 mesh(X,Y,Z,C)/surf(X,Y, Z ,C) 最完整的调用格式,C用来指定各点用色

3.3.2 三维网线图和曲面图
2 2 用曲面图表现函数 z=x +y clf,x=-4:4;y=x;[X,Y]=meshgrid(x,y);

Z=X.^2+Y.^2; surf(X,Y,Z); hold on,colormap(hot) %设置当前图形窗的着色色图 设置当前图形窗的着色色图
colormap(CM) %设置当前图形窗的着色色图 ,见书上表格 设置当前图形窗的着色色图CM, 设置当前图形窗的着色色图 注意: 每个图形窗只能有一个色图。 注意:MATLAB每个图形窗只能有一个色图。 每个图形窗只能有一个色图

%生成 x-y 坐标“格点”矩阵 生成 坐标“格点” %计算格点上的函数值 计算格点上的函数值

stem3(X,Y,Z,'bo'),hold off
%用来表现在格点上计算函数值 用来表现在格点上计算函数值

3.3.2 三维网线图和曲面图

40 30 20 10 0 4 2 0 -2 -4 -4 -2 2 0 4

小结
理解连续函数可视化的实质,掌握一般步骤 掌握二维绘图指令plot的用法,熟悉图形的细节 控制 掌握三维绘图的数据准备过程,及指令的用法


相关文章:
第三讲 数据和函数的可视化_图文.ppt
第三讲 数据和函数的可视化 - 第三讲 数据和函数的可视化 1 二维画图 2 三维画图 3 函数图形绘制 对应的库函数文件存放在系统\matlab\toolbox\ 对应的库函数...
第三讲 MATLAB 数据的可视化_图文.ppt
第三讲 MATLAB 数据的可视化 - 第二章 数据的可视化 主要内容 2.1 数据可视化基础 2.2 二维图形 2.3 三维图形 2.4 常用函数的绘图 2.5 数据可视化的其他方面...
第5章_Matlab数据和函数的可视化_图文.ppt
第5章_Matlab数据和函数的可视化 - 第五讲 数据和函数的可视化 2018
第3讲(1) 第4章 用Matlab实现计算数据可视化_图文.ppt
Matlab基础与应用第三讲(1) 用MATLAB实现计算数据可视化 张文静 zhangwj@bjtu....MATLAB还提供了非常丰富的、具有实际意义的二维图形绘制函数,使数据可 视化的...
第三讲:Matlab数据可视化.ppt
第三讲 Matlab 图形系统 (数据可视化)Matlab语言丰富的图形 表现方法,使得...图形加注功能将标题、坐标轴标记、网格线及文字注 释加注到图形上,这些函数为:...
第三章 数据及函数的可视化_图文.ppt
第三章 数据和函数的可视化 第三章 数据及函数的可视化数据可视化是数据分析、系统分析的 一种重要方法。MATLAB具有丰富且易于理 解和使用的绘图指令,数据和函数的...
Matlab第五章-数据和函数的可视化_图文.ppt
Matlab第五章-数据和函数的可视化_理学_高等教育_教育专区 暂无评价|0人阅读|0次下载|举报文档Matlab第五章-数据和函数的可视化_理学_高等教育_教育专区。数值计算...
MATLAB实验四《数据和函数的可视化》.doc
《计算机仿真及应用》实验教案 实验四一、实验目的 数据和函数的可视化 1、掌握...第5章_Matlab数据和函数... 81页 1下载券 第三讲 MATLAB数据和函... 55...
第三章 数据及函数的可视化_图文.ppt
第三章 数据和函数的可视化 第三章 数据及函数的可视化数据可视化是数据分析、系统分析的 一种重要方法。MATLAB具有丰富且易于理 解和使用的绘图指令,数据和函数的...
第三章数据和函数的可视化_图文.ppt
第三章数据和函数的可视化 - 机电工程系 MATLAB语言 主讲: 张玉平 2012.03 第三章 数据和函数的可视化 教学内容: ? 二维绘图 ? 三维绘图 ? 图形窗功能 §...
第三章数据的可视化.ppt
第三章 数据的可视化 内容简介 ? ? ? ? ? ? 3.1 数据可视化基础 3.2 二维...3.4 常用函数的绘图 ? Matlab提供了一些简洁的绘图指令,应用这些 指令无需准备...
MATLAB第五讲数据和函数的可视化(2013年)_图文.pdf
MATLAB第五讲数据和函数的可视化(2013年) - 姓名:马凯 邮箱:matlab2011@163.com QQ : 9068005 可视化就是将数据转换为图形 或图像在屏幕上显示出来...
MATLAB教程 数据和函数的可视化 示例.doc
MATLAB 教程 数据和函数的可视化 示例 所有算例都是运行实例,易于读者实践
第三章 matlab数据可视化_图文.ppt
3.2二维图形绘制一、绘制简单的二维曲线 plot函数,通过连折线的方式绘制二维图形...第7章 MATLAB 数据可视化... 97页 1下载券 第三讲 MATLAB 数据的可......
matlab数据和函数的可视化_图文.ppt
matlab数据和函数的可视化 - 第五章 数据和函数的可视化 5.1 引言 数据可视化的目的: ? 通过图形,从一堆杂乱的离散数据中观察数据 间的内在关系 感受由图形所...
第三讲 Matlab绘图.ppt
第三讲 Matlab绘图 - 第三讲 基本绘图方法 基本绘图方法 1 概述及图形窗口的控制 2 基本二维绘图 3 格式化绘图 4 特殊图形函数 5 基本三维绘图 6 保存和输出...
第6讲matlab_数据和函数的可视化(1)_图文.ppt
第6讲matlab_数据和函数的可视化(1) - 数据和函数的可视化 第 6讲 引言 ? ? ? ? ? 世界顶级的数值计算工具软件MATLAB具有极其强大 的数据可视化功能,可制作...
第三章数据的可视化.ppt
三维图形 3.4 常用函数的绘图 3.5 数据可视化的其他方面 3.1 数据可视化基础一、 图形窗口 MATLAB自动将图形画在图形窗口上,图形窗口相对于命令 窗口是独立的窗口...
MATLAB数据和函数的可视化_图文.doc
MATLAB数据和函数的可视化 - 第五部分 数据和函数的可视化 视觉是人们感受世界、认识自然的最重要依靠。数据可视化的目的在于:通过图形,从 一堆杂乱的离散数据中观察...
MATLAB 数据和函数的可视化_图文.ppt
MATLAB 数据和函数的可视化 - 第6章 数据和函数的可视化 matla
更多相关标签: