MATLAB的数值计算功能 - 科学网—博客.doc
数据和函数的可视化
引导
离散数据和离散函数的可视化
【*例7.1.1-1】用图形表示离散函数。
n=0:12;%产生一组自变量数据
y=1./abs(n-6);%计算相应点的函数值
plot(n,y,'r*','MarkerSize',20)%用红花标出数据点
grid on%画坐标方格
Warning: Divide by zero.
图 7.1.1-1 离散函数的可视化
连续函数的可视化
【*例7.1.2-1】用图形表示连续调制波形。
t1=(0:11)/11*pi;%<1>
y1=sin(t1).*sin(9*t1);
t2=(0:100)/100*pi;%<3>
y2=sin(t2).*sin(9*t2);
subplot(2,2,1),plot(t1,y1,'r.'),axis([0,pi,-1,1]),title('子图 (1)')
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)')
图 7.1.2-1 连续函数的图形表现方法
可视化的一般步骤
绘制二维图形的一般步骤
绘制三维图形的一般步骤
二维曲线绘图的基本操作
plot的基本调用格式
【*例7.2.1-1】简单例题,比较方便的试验指令。
t=(0:pi/50:2*pi)';k=0.4:0.1:1;Y=cos(t)*k;plot(t,Y)
图 7.2.1-1 plot指令基本操作演示
【*例7.2.1-2】用图形表示连续调制波形 及其包络线。
t=(0:pi/100:pi)';%长度为101的时间采样列向量<1>
y1=sin(t)*[1,-1];%包络线函数值,是(101x2)的矩阵<2>
y2=sin(t).*sin(9*t);%长度为101的调制波列向量<3>
t3=pi*(0:9)/9;%<4>
y3=sin(t3).*sin(9*t3);plot(t,y1,'r:',t,y2,'b',t3,y3,'bo')%<5>
axis([0,pi,-1,1])%控制轴的范围<6>
图7.2.1-2
【*例7.2.1-3】用复数矩阵形式画Lissajous图形。(在模拟信号时代,Lissajous图形常用来测量信号的频率。)
t=linspace(0,2*pi,80)';%<1>
X=[cos(t),cos(2*t),cos(3*t)]+i*sin(t)*[1, 1, 1];%(80x3)的复数矩阵
plot(X)%<3>
axis square%使坐标轴长度相同<4>
legend('1','2','3')%图例
图 7.2.1-3 Lissajous 图
【*例7.2.1-4】采用模型画一组椭圆。
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')
图 7.2.1-4 一组椭圆
曲线的色彩、线型和数据点形
色彩和线型
数据点形
【*例7.2.2.2-1】用图形演示平面上一个方块四个顶点在仿射投影(Affine Projection)下的位置、形状变化。
%平面上的四个点和它们构成的方块
p1=[-0.5,0,1]';p2=[-0.5,1,1]';p3=[0.5,1,1]';p4=[0.5,0,1]';
Sq=[p1,p2,p3,p4,p1];
%平移投影:沿x轴移动0.5 , 沿y轴移动1 。
dx=0.5;dy=1;T=[1,0,dx;0,1,dy;0,0,1];
%旋转投影:逆时针旋转30度。
th=pi/6;R=[cos(th),-sin(th),0;sin(th),cos(th