matlab画三维图像的示例代码(附demo)

 更新时间:2019年12月08日 15:04:57   作者:不做程序猿  
这篇文章主要介绍了matlab画三维图像的示例代码(附demo),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

当我们学习surface命令时,已经看到了三维作图的一些端倪。在matlab中我么可以调用mesh(x,y,z)函数来产生三维图像。

首先,我们用z=cos(x)sin(y)在-2pi ≤x,y≤ 2pi内的图像来看看:

[x,y] = meshgrid(-2*pi:0.1:2*pi);
z = cos(x).*sin(y);
mesh(x,y,z),xlabel('x'),ylabel('y'),zlabel('z')

显示图像如下:

同样用mesh命令产生z = ye-(x2+y2)的三维图像:

[x,y] = meshgrid(-2:0.1:2);
z = y.*exp(-x.^2-y.^2);
mesh(x,y,z),xlabel('x'),ylabel('y'),zlabel('z')

下面绘制表面带有渐变颜色的图像,可以通过 surf 和 surfc 命令实现,只要简单更改上面例子中的命令为:

surf(x,y,z),xlabel('x'),ylabel('y'),zlabel('z')

则图像如下所示,图像表面的颜色与高度是相称的:

若使用surfc则会在图像中留下映像:

surfc(x,y,z),xlabel('x'),ylabel('y'),zlabel('z')

还可以调用surfl(命令中的'l'表示这是一个光照表面 lighted surface)命令显示三维光照物体的表面,可以使用这个命令产生没有线条的三维图像,图像还可以是彩色的或灰度的。例如仍然产生函数z = ye-(x2+y2)的灰度图像,图像中的阴影可设置为flat、interp、faceted:

surfl(x,y,z),xlabel('x'),ylabel('y'),zlabel('z')
shading interp;
colormap(gray);

下面我们使用matlab内置函数来产生像球形或圆柱形这样的基本图像,例如:

t = 0:pi/10:2*pi;
[X,Y,Z] = cylinder(1+sin(t));
surf(X,Y,Z),colormap('default');
axis square

会得到如下图像:

试试另一个稍微有点不同的函数,阴影设置为faceted:

t = 0:pi/10:2*pi;
[X,Y,Z] = cylinder(1+cos(t));
surf(X,Y,Z),shading faceted;
axis square

若将阴影设置为shading flat,则图像显示为:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Prometheus配置解析小结

    Prometheus配置解析小结

    本文主要介绍了Prometheus配置解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-05-05
  • Source Insight 4.0.093 安装破解详细图文教程

    Source Insight 4.0.093 安装破解详细图文教程

    这篇文章主要介绍了Source Insight 4.0.093 安装破解详细图文教程,source insight 4是一款非常强大的程序编辑器,如果你没有一款合适的代码编辑器,那么这款软件不妨试试,可能你会喜欢
    2022-08-08
  • Ubuntu中安装vscode与官方插件

    Ubuntu中安装vscode与官方插件

    这篇文章介绍了Ubuntu中安装vscode与官方插件的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • prometheus安装和使用过程

    prometheus安装和使用过程

    Prometheus是一个开源的系统监控和报警系统,通常会搭配prometheus进行监控,同时也支持多种exporter采集数据,还支持pushgateway进行数据上报,Prometheus性能足够支撑上万台规模的集群,这篇文章主要介绍了prometheus安装和使用记录,需要的朋友可以参考下
    2023-06-06
  • 趣谈Unicode、Ascii、utf-8、GB2312、GBK等编码知识

    趣谈Unicode、Ascii、utf-8、GB2312、GBK等编码知识

    这篇文章主要介绍了趣谈Unicode、Ascii、utf-8、GB2312、GBK等编码知识,文章写的诙谐风趣,膜拜啊,需要的朋友可以参考下
    2014-07-07
  • ol7.7安装部署4节点hadoop 3.2.1分布式集群学习环境的详细教程

    ol7.7安装部署4节点hadoop 3.2.1分布式集群学习环境的详细教程

    这篇文章主要介绍了ol7.7安装部署4节点hadoop 3.2.1分布式集群学习环境,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 大数据就业的三大方向和最热门十大岗位【推荐】

    大数据就业的三大方向和最热门十大岗位【推荐】

    这篇文章主要介绍了大数据就业的三大方向和最热门十大岗位,需要的朋友可以参考下
    2019-06-06
  • Git用户签名的修改取消及优先级拓展教程

    Git用户签名的修改取消及优先级拓展教程

    这篇文章主要为大家介绍了Git用户签名的修改取消及优先级拓展教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04
  • 鸿蒙UI开发之滚动组件overscroll-decor安装和使用介绍

    鸿蒙UI开发之滚动组件overscroll-decor安装和使用介绍

    鸿蒙UI开发之滚动组件overscroll-decor‌是一个开源库,提供一种简单、灵活的方式来实现各种过度滚动(overscroll)动画效果,提升用户的交互体验,该库提供了类似于iOS的过度滚动效果,几乎可以应用于所有Android,如RecyclerView、ListView、GridView、ScrollView等‌
    2024-12-12
  • 微信小程序(应用号)组件详细介绍

    微信小程序(应用号)组件详细介绍

    这篇文章主要介绍了微信小程序(应用号)组件详细介绍的相关资料,需要的朋友可以参考下
    2016-09-09

最新评论