数据可视化三:Matlab数据可视化(二)

数据可视化三:Matlab数据可视化(二)

目录:

1、三维曲线绘制:

2、统计图绘制:

3、动画绘制:


1、三维曲线绘制:

1.1 设计函数y=sin(t), x=cos(t), z=(t+1).^t.*sin(t).*cos(t),并使用plot3函数绘制这三个函数的曲线。

t=0:pi/100:10*pi;

y=sin(t);

x=cos(t);

z=(t+1).^t.*sin(t).*cos(t);

plot3(x,y,z);

title('Line in 3-D Space+++WEIMAN');

xlabel('X');ylabel('Y');zlabel('Z');

grid on;

思考:plot3函数的用法?

答:plot3可以画出三维空间中的曲线。plot3(x1,y1,z1) 其中x1,y1,z1为相同维数的向量,分别存储各个点坐标。

程序分析:

t=0:pi/100:10*pi; % 定义t列向量,这个向量的第一个元素是0,最后一个元素是10π,而每两个元素之间的差是π/100;

y=sin(t); % 定义y函数

x=cos(t); % 定义x函数

z=(t+1).^t.*sin(t).*cos(t); % 定义z函数

plot3(x,y,z); % 绘制三维曲线

title('Line in 3-D Space+++WEIMAN'); % 定义图形标题

xlabel('X');ylabel('Y');zlabel('Z'); % X轴注解,Y轴注解,Z轴注解

grid on; % 绘制网格线

legend( 'z=(t+1).^t.*sin(t).*cos(t)'); % 添加标签

运行结果:


图1.1 运行结果


1.2 设计函数z=sin(x+sin(y))-x/10;,分别绘制带等高线的三维网格曲面函数meshc和带底座的三维网格曲面函数meshz。并使用函数surf绘制该函数图像

[x,y]=meshgrid(-7:0.5:7);
z=sin(sqrt(x.^4+y.^4))./sqrt(x.^4+y.^4+eps);
subplot(2,2,1);
mesh(x,y,z);
title('mesh(x,y,z)+++weiman1')
subplot(2,2,2);
meshc(x,y,z);
title('meshc(x,y,z) +++weiman2')
subplot(2,2,3);
meshz(x,y,z)
title('meshz(x,y,z) +++weiman3')
subplot(2,2,4);
surf(x,y,z);
title('surf(x,y,z)');

思考:meshc,meshz,surf函数的用法?

答:(1)meshgrid:将xoy平面用定义的x、y向量网格化,之后对其中的每一个得到的点求其对应的函数值,最后用mesh将函数图像做出来。

(2)mesh:用于绘制立体网状图

(3)meshz:为曲面加上围裙

(4)meshc:同时画出网状图与等高线

(5)surf:绘制立体曲面图

(6)程序分析:

close all % 关闭所有的图形视窗;

[x,y]=meshgrid(-7:0.5:7); % 将x,y向量网格化,从-7到7的正方形区间内,各点间隔0.5,即x轴有29个点,y轴有29个点,所以,绘制的三维图像网格中,共有29*29=841个点;

z=sin(sqrt(x.^4+y.^4))./sqrt(x.^4+y.^4+eps); % 定义z函数;

subplot(2,2,1); % 同时画出2*2=4个小图形于一个视窗之中,这是定义的第一个区域;

mesh(x,y,z); % 在第一个区域画出x,y,z函数的图像;

title('mesh(x,y,z)+++weiman1') %给第一个区域的图形定义标题;

subplot(2,2,2); % 定义的第二个区域;

meshc(x,y,z); % 在第二个区域画出x,y,z函数的图像并同时画出等高线;

title('meshc(x,y,z) +++weiman2') % 给第二个区域的图形定义标题;

subplot(2,2,3); % 定义的第三个区域;

meshz(x,y,z) % 在第三个区域画出x,y,z函数的图像并带底座(围裙);

title('meshz(x,y,z) +++weiman3') % 给第三个区域的图形定义标题;

subplot(2,2,4); % 定义的第四个区域;

surf(x,y,z); % 在第四个区域绘制x,y,z函数的立体曲面图;

title('surf(x,y,z)'); % 给第四个区域的图形定义标题;

运行结果:

图1.2 运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值