第五章 数据和函数的可视化
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.3 三维曲线和曲面
5.3.1 三维线图指令 plot3
plot3(X ,Y ,Z ,'s') %用s 指定的点形线型色彩绘制曲线 plot3(X1 ,Y1 ,Z1 ,‘s1’ ,X2 ,Y2 ,Z2 ,‘s2’ , ... ) %用s1 , s2 指定的点形线型色彩绘制多类曲 线
例3:极坐标绘图
t=0:2*pi/90:2*pi; y=cos(4*t); polar(t ,y)
150
901 120 0.8 0.6 0.4 0.2 180 0 30 60
210
330
240 270
300
例4:绘制火柴杆图
t=0:0.2:2*pi; y=cos(t); stem(y)
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 5 10 15 20 25 30 35
如果想在图上标识希腊字母、数学符等特殊字符 ,则必须用
表5.2.7、5.2.8 中的指令。
如果想设置上下标 ,或者想对字体或字体大小进行 设置 ,可以通过在被控制字符前 ,使用表5.2-9、表 5.2-10中的指令和设置值。
5.2.3 多次层叠、双纵坐标和多子图
如何在已存在的图上再绘制一条或多条曲线?
(3)单输入量绘线
plot(Y)
缺省自变量绘图格式 ,Y为向量 , 以Y元素值为纵
坐标 ,以相应元素下标为横坐标绘图
三、plot的属性可控调用格
plot绘制的曲线是图形对象之一 ,称为“线”。该线 的几何形状及色彩都是它的属性表现 ,我们可以通过 以下调用格式对绘线的属性加以控制。
plot(x , y , 's' , 'PropertyName' , PropertyValue , …)
说明:
(1)运用属性名(PropertyName)和属性值 ( PropertyValue )可以对线对象的属性进行设计 , 使所绘曲线更具个性化。 “线”图形对象最常用的属性见表5.2-5。(P179)
(2)采用‘s’字符串方式设置点形线型及几种常用色 彩 ,方便 ,常用。假若用户不采用‘s’字符串 ,而直接 采用属性名/属性值对进行设置也是可以的 ,并且可 以设置的更细腻。
clf x=-1:0.01:5; y=(x+2).^x-2; plot(x ,y) grid on
x
2
的解。
(2)在曲线与纵坐标轴(y=0)的交点局部放大图上求解
[x,y]=ginput(1)
(3)显示图解结果
>>format long >>x ,y x = 0.69828692903537 y = -5.884401711382421e-010
区域图
>>x=magic(6);area(x)
120
100
80
60
40
20
0
1
1.5
2
2.5
3
3.5
4
4.5
5
5.5
6
饼图
x=[1 2 3 4 5 6 7]; y=[0 0 0 1 0 0 0]; pie(x ,y)
4% 7% 25% 11%
14%
21%
18%
>>pie([2 4 3 5] ,[0 1 0 0] ,{'North' ,'South' ,'East' ,'West'})
plot命令自动打开一个图形窗口Figure
用直线连接相邻两数据点来绘制图形
根据图形坐标大小自动缩扩坐标轴 ,将数据标尺及单位标注 自动加到两个坐标轴上 ,可自定义坐标轴。 如果已经存在一个图形窗口 ,plot命令则清除当前图形 ,绘 制新图形 可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多 曲线分图绘图;可多窗口绘图 可任意设定曲线颜色和线型 可给图形加坐标网线和图形加注功能
例
x= linspace(1,100,100) ; y=exp(x) ; loglog(x,y) figure(2) semilogy(x,y)
三、多子图
MATLAB允许用户在同一个图形窗里布置几幅独 立的子图 ,具体指令为:
subplot(m ,n ,k) %使m×n幅子图中的第k 幅成 为当前图 subplot(‘position’ ,[left bottom width height]) %在指定位置上开辟子图 ,并成为当前图。
5.2 二维曲线和图形
MATLAB提供了多种二维图形的绘制指令(见 表5.2-1) ,但其中 ,最重要、最基本的指令是plot。 其他许多特殊绘图指令或以它为基础而形成 ,或使
用场合较少。出于简明考虑 ,本节着重介绍plot的使
用。(P177)
5.2.1 二维曲线绘制的基本指令Plot
plot的功能:
如何把同一自变量的两个不同量纲、不同数量级的函 数的绘制在同一张图上?
二、双纵坐标图
plotyy(X1 ,Y1 ,X2 ,Y2) %以左、右不同纵轴绘制
X1-Y1、X2-Y2两条曲线。 plotyy(X1 ,Y1 ,X2 ,Y2 ,‘FUN’) %以左、右不同纵
轴把X1-Y1、X2-Y2绘制成FUN指定形式的两条曲线。
5.2.5 特殊二维绘图函数
bar –––– 绘制直方图
polar –––– 绘制极坐标图
stairs –––– 绘制阶梯图
stem –––– 绘制火柴杆图
comet –––– 绘制彗星曲线
area –––– 区域图 pie –––– 饼图
例 1:绘制阶梯曲线
x=0:pi/20:2*pi; y=sin(x);
(3)如果‘s’缺省 ,则默认绘制“蓝色细实线”。
二、plot的衍生调用格式
(1)单色或多色绘制多条曲线
plot(X ,Y ,‘s’)
线
采用s 指定的点形线型色彩绘制多条曲
plot(X ,Y)
条曲线
采用默认的色彩次序用细实线绘制多
(2)多三元组绘制多条曲线(常用)
plot(x1 ,y1 ,'s1' ,x2 ,y2 ,'s2' , ... ,xn ,yn ,'sn')
其它二维绘图指令(见表5.2-1)
例:
x=linspace(-7 ,7 ,100) y1=sin(x) y2=cos(x) plotyy(x,y1,x ,y2) figure(2) x3=linspace(-2*pi,2*pi,100) y3=exp(x3) plotyy(x3,y3,x,y2, 'semilogy' , 'plot')
第五章 数据和函数的可视化
5.1 引导
5.2 二维曲线和图形
5.3 三维曲线和图形
5.4 图形窗功能简介
5.1 引导
1. 离散数据和离散函数的可视化
n=(-10:10)'; y=abs(n); plot(n ,y ,'r.' ,'MarkerSize' ,20) axis equal grid on xlabel('n')
plotyy(X1 ,Y1 ,X2 ,Y2 ,'FUN1' ,'FUN2')
%以左、右不同纵轴把X1-Y1、X2-Y2绘制成FUN1、
FUN2指定的不同形式的两条曲线。
FUN1、FUN2可以取:
loglog ––––X轴和Y轴均采用对数坐标
semilogx –––– X轴采用对数坐标
semilogy–––– Y轴采用对数坐标
stairs(x ,y)
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
例 2:阶梯绘图
h2=[1 1;1 -1]; h4=[h2 h2;h2 -h2]; h8=[h4 h4;h4 -h4]; %h8=hadamard(8); t=1:8; for i=1:8 subplot(8 ,1 ,i); stairs(t ,h8(i ,:)) axis off end
人工设定坐标范围指令:
axis([x1 ,x2 ,y1 ,y2])
%二维
axis([x1 ,x2 ,y1 ,y2 ,z1 ,z2]) %三维
要求x1<x2 , y1<y2 , z1<z2 , 可以取inf或-inf
二、分格线和坐标框
grid
%是否画分格线的双向切换指令(使当前分 %画分格线 %不画分格线 (默认)
格线状态翻转)
grid on grid off
box
%坐标形式在封闭式和开启式之间切换指令
box on %使当前坐标呈封闭形式 (默认) box off %使当前坐标呈开启形式
三、图形标识指令
图形标识包括:图名(title)、坐标轴名(label)、
图形注释(text)和图例(legend)。标识指令的最
例5:绘制直方图
t=0:0.2:2*pi; y=cos(t); bar(t ,y)
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 5 10 15 20 25 30 35
例6:绘制彗星曲线图
t= -pi:pi/500:pi; y=tan(sin(t))-sin(tan(t)); comet(t ,y)
一、多次层叠
hold on %使当前轴及图形保持而不被刷新 ,准备接受 此后将绘制的新曲线。 hold off hold %使当前轴及图形不再具备不被刷新的性质。 %当前图形是否具备刷新性质的双向切换开关。
【例5.2-6】利用hold绘制离散信号通过零阶保持器后产生 的波形。(Exp050206.m)
【例5.2-1】二维曲线绘图指令演示之一。 (Exp050201.m)演示:“线宽”属性的设置。 【例5.2-2】用图形表示连续调制波形。
y sin(t ) sin(9t )
( Exp050202.m )
5.2.2 坐标控制和图形标识
一、坐标轴的控制 坐标轴控制指令axis使用比较简单 ,它用于控制坐 标轴的可视、取向、取值范围和轴的高宽比等。 常用的指令形式及功能见表5.2-6。(P182)
说明: (1) S ,S1 ,S2为字符串 ,可以是英文、中文或Tex定义的各种 特殊字符。
(2) legend所画图例默认在图形窗的右上角。可通过相应的
属性进行控制 ,改变其位置 ,例如 legend(S1 ,S2 , ’Location’ ,’SouthEast’) %把图例设置在图 形窗的右下角。 四、标识指令中字符的精细控制
【例】
5.2.4 获取二维图形数据的指令 ginput
[x ,y]=ginput(n) 用鼠标从二维图形上获取n个点的 数据坐标 (x ,y) 。
说明: (1)唯一能从图形获取数据的指令;
(2)仅适用于二维图形;
(3)使用前 ,通常先对图形进行局部ቤተ መጻሕፍቲ ባይዱ大;
(4)操作方法
【例5.2-9】采用图解法求 ( x 2) (1)绘制 ( x 2) x 2 曲线
一、基本调用格式
plot(x ,y ,‘s’) ——平面绘线三元组 ,分别指定平面
曲线的几何位置、点形、线型和色彩。
(1)其中 ,x ,y ——为长度相同的一维数组 ,分别指定采
样点的横坐标和纵坐标;
(2)‘s’——为字符串 ,它指定曲线的点形、线型和色彩。
(表5.2-2~5.2-4)
连续函数的可视化 P184
例:图示化y=sin(t)sin(9t)的离散图形和连续图形。
t1=(0:11)/11*pi; t2=(0:400)/400*pi; t3=(0:50)/50*pi; y1=sin(t1).*sin(9*t1); y2=sin(t2).*sin(9*t2); y3=sin(t3).*sin(9*t3); subplot(2 ,2 ,1) ,plot(t1 ,y1 ,'r.') axis([0 ,pi ,-1 ,1]) ,title('(1)点过少的离散图形') subplot(2 ,2 ,2) ,plot(t1 ,y1 ,t1 ,y1 ,'r.') axis([0 ,pi ,-1 ,1]) ,title('(2)点过少的连续图形') subplot(2 ,2 ,3) ,plot(t2 ,y2 ,'r.') axis([0 ,pi ,-1 ,1]) ,title('(3)点密集的离散图形') subplot(2 ,2 ,4) ,plot(t3 ,y3) axis([0 ,pi ,-1 ,1]) ,title('(4)点足够的连续图形')
简捷使用格式如下:
title(S) xlabel(S) ylabel(S)
或数据点形图例
%书写图名 %横坐标轴名 %纵坐标轴名
legend(S1 ,S2 , ...) %绘制曲线所用线型、色彩 text(xt ,yt ,S) %在图面(xt , yt)坐标处书写字符注
释
gtext %将标注加到图形任意位置