当前位置:文档之家› 第五章 数据和函数的可视化

第五章 数据和函数的可视化


例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)
区域图
>>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'})

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-1】二维曲线绘图指令演示之一。 (Exp050201.m)演示:“线宽”属性的设置。 【例5.2-2】用图形表示连续调制波形。
y sin(t ) sin(9t )
( Exp050202.m )
5.2.2 坐标控制和图形标识
一、坐标轴的控制 坐标轴控制指令axis使用比较简单 ,它用于控制坐 标轴的可视、取向、取值范围和轴的高宽比等。 常用的指令形式及功能见表5.2-6。(P182)
一、多次层叠

hold on %使当前轴及图形保持而不被刷新 ,准备接受 此后将绘制的新曲线。 hold off hold %使当前轴及图形不再具备不被刷新的性质。 %当前图形是否具备刷新性质的双向切换开关。

【例5.2-6】利用hold绘制离散信号通过零阶保持器后产生 的波形。(Exp050206.m)
格线状态翻转)

grid on grid off

box
%坐标形式在封闭式和开启式之间切换指令
box on %使当前坐标呈封闭形式 (默认) box off %使当前坐标呈开启形式
三、图形标识指令
图形标识包括:图名(title)、坐标轴名(label)、
图形注释(text)和图例(legend)。标识指令的最


说明: (1) S ,S1 ,S2为字符串 ,可以是英文、中文或Tex定义的各种 特殊字符。
(2) legend所画图例默认在图形窗的右上角。可通过相应的
属性进行控制 ,改变其位置 ,例如 legend(S1 ,S2 , ’Location’ ,’SouthEast’) %把图例设置在图 形窗的右下角。 四、标识指令中字符的精细控制
连续函数的可视化 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)点足够的连续图形')

plot命令自动打开一个图形窗口Figure


用直线连接相邻两数据点来绘制图形
根据图形坐标大小自动缩扩坐标轴 ,将数据标尺及单位标注 自动加到两个坐标轴上 ,可自定义坐标轴。 如果已经存在一个图形窗口 ,plot命令则清除当前图形 ,绘 制新图形 可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多 曲线分图绘图;可多窗口绘图 可任意设定曲线颜色和线型 可给图形加坐标网线和图形加注功能
其它二维绘图指令(见表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')
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
(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 二维曲线和图形
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.7、5.2.8 中的指令。
如果想设置上下标 ,或者想对字体或字体大小进行 设置 ,可以通过在被控制字符前 ,使用表5.2-9、表 5.2-10中的指令和设置值。
5.2.3 多次层叠、双纵坐标和多子图
如何在已存在的图上再绘制一条或多条曲线?

【例】
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 曲线
5.2.5 特殊二维绘图函数
bar –––– 绘制直方图
polar –––– 绘制极坐标图
stairs –––– 绘制阶梯图
stem –––– 绘制火柴杆图
come pie –––– 饼图
例 1:绘制阶梯曲线
x=0:pi/20:2*pi; y=sin(x);
说明:
(1)运用属性名(PropertyName)和属性值 ( PropertyValue )可以对线对象的属性进行设计 , 使所绘曲线更具个性化。 “线”图形对象最常用的属性见表5.2-5。(P179)
(2)采用‘s’字符串方式设置点形线型及几种常用色 彩 ,方便 ,常用。假若用户不采用‘s’字符串 ,而直接 采用属性名/属性值对进行设置也是可以的 ,并且可 以设置的更细腻。
例3:极坐标绘图
t=0:2*pi/90:2*pi; y=cos(4*t); polar(t ,y)
相关主题