matlab生成cos函数_从零开始的matlab学习笔记——(22)三维曲面绘制

本文详细介绍了matlab中用于绘制三维曲面的函数,包括meshgrid、mesh、surf以及fsurf。通过实例代码展示了如何使用这些函数创建坐标矩阵、绘制三维曲面,并比较了mesh和surf的区别。同时,还演示了如何利用fsurf绘制参数方程定义的三维螺旋面。
摘要由CSDN通过智能技术生成

matlab应用——求极限,求导,求积分,解方程,函数绘图,三维图像....更多内容尽在个人专栏:matlab学习

上一节我们说了说三维曲线的绘制,这一节我们趁热打铁,说一说三维曲面

meshgrid函数:

建造三维曲面之前,我们先来了解一下meshgrid函数

meshgrid函数用来生成二维方格矩阵,作为第三维变量z的因变量

调用格式:[x,y]=meshgrid[t,s]

其中t是行矩阵,s是列矩阵,分别用来存储x,y的范围精度

我们来看一个例子:

x=2:1:6;

y=(3:1:8)';

[X,Y]=meshgrid(x,y);

plot(X,Y)

hold on;

plot(X',Y');

title('生成坐标矩阵')

效果如图:

65ccdb4e5d6f131734640651db3a10f6.png

生成的矩阵就是这个样子

mesh函数与surf函数:

这两个函数都是用来生成三维曲面,具体的差异我们等下看图了解

mesh函数和surf函数的调用格式和plot3函数很相似:

mesh(x,y,z)

surf(x,y,z)

其中x,y,z构成三维坐标(x,y,z)

直接上个完整代码:

t=-2:0.1:2;

s=-1:0.1:3

[x,y]=meshgrid(t,s);

z=x.*exp(-x.^2-y.^2);

subplot(1,3,1);

plot3(x,y,z);

title('三维曲线');

subplot(1,3,2);

mesh(x,y,z);

title('mesh');

subplot(1,3,3);

surf(x,y,z);

title('surf');

效果就是这样:

0c15f01dab3170797d9c4aad4e2393bf.png

fsurf,fmesh函数:

这两个函数就是用来绘制参数方程定义的三维曲面,和fplot3函数很像,需要用到函数句柄

调用格式:fsurf(x,y,z,[umin,umax,vmin,vmax]);

上一节我们绘制了三维的螺旋线,这一节我们再绘制一个螺旋面,大家可以对比一下看看

完整代码:

x=@(u,v) u*sin(v);

y=@(u,v) -u*cos(v);

z=@(u,v) v;

fsurf(x,y,z,[-5,5,-2,2]);

grid on;

title('螺旋曲面');

xlabel('x=usinv');

ylabel('y=-ucosv');

zlabel('z=v');

效果如图:

057487a2d7052cec41286a6d3054386f.png
有点丑

这一节我们主要说了说怎么用matlab绘制三维曲面图,下一节我们进入一个新的环节,运用matlab进行一些数据的处理。

欢迎喜欢的朋友点赞关注收藏啊:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值