Matlab可以绘制二维、三维和四维的数据图形,并且通过对图形的线型、颜色、标计、观察角度、坐标轴范围等属性的设置,将大量数据的内在联系及规律表现得更加细腻、完善。
离散数据及离散函数
一个二元实数标量对(x0,y0)(x_0,y_0)(x0,y0)可以用平面上的点来表示,一个二元实数标量数组[(x1,y1)(x2,y2)...(xn,yn)][(x_1,y_1)(x_2,y_2)...(x_n,y_n)][(x1,y1)(x2,y2)...(xn,yn)]可以用平面上的一组点来表示。对于离散函数Y=f(X)Y=f(X)Y=f(X),当XXX为一维标量数组[x1,x2,...,xn][x_1,x_2,...,x_n][x1,x2,...,xn]时,根据函数关系可以求出YYY相应的一维标量[y1,y2,...,yn][y_1,y_2,...,y_n][y1,y2,...,yn]。
当把这两个向量数组在直角坐标系中用点序列来表示时,就实现了离散函数的可视化。当然,这些图形上的离散序列所反映的只是XXX所限定的有限点上或是有限区间内的函数关系,应当注意的是,Matlab是无法实现对无限区间上的数据的可视化的。
离散数据和离散函数的可视化
代码清单:discrete_func.m
% 生成两个一维实数数组
X1=[1 2 4 6 7 8 10 11 12 14 16 17 18 20];
Y1=[1 2 4 6 7 8 10 8 7 6 4 2 1];
figure(1)
plot(X1,Y1,'o','MarkerSize',15)X2=1:20;
Y2=log(X2); % 根据log函数生成两个一维实数数组
figure(2)
plot(X2,Y2,'o','MarkerSize',15)
进入代码文件discrete_func.m
所在的目录,并运行该程序,运行结果如下
连续函数
Matlab是无法画出真正的连续函数的,因此在实现连续函数的可视化时,首先必须将连续函数用一组离散自变量上计算函数结果,然后将自变量数组和结果数组在图形中表示出来。
当然,这些离散的点还是不能表现函数的连续性的。为了更形象地表现函数的规律及其连续变化,通常采用以下两种方法。
(1)对离散区间进行更细的划分,逐步趋近函数的连续变化特性,直到达到视觉上的连续效果。
(2)把每两个离散点用直线连接,以每两个离散点的直线来近似表示两点间的函数特性。
连续函数的可视化
代码清单:continuous_func.m
X1=(0:12)*pi/6;Y1=cos(3*X1);
X2=(0:360)*pi/180;Y2=cos(3*X2);
figure(1);
subplot(2,2,1);plot(X1,Y1,'o','MarkerSize',3);
xlim([0 2*pi]);
subplot(2,2,2);plot(X1,Y1,'LineWidth',2);
xlim([0 2*pi]);
subplot(2,2,3);plot(X2,Y2,'o','MarkerSize',3);
xlim([0 2*pi]);
subplot(2,2,4);plot(X2,Y2,'LineWidth',2);
xlim([0 2*pi]);
运行程序,结果如下