使用Matlab绘制三维图的几种方法
来源:互联网 发布:springboot配置端口 编辑:程序博客网 时间:2024/05/14 05:30
以下六个函数都可以实现绘制三维图像:
- surf(xx,yy,zz);
- surfc(xx,yy,zz);
- mesh(xx,yy,zz);
- meshc(xx,yy,zz);
- meshz(xx,yy,zz);
- waterfall(xx,yy,zz);
- plot3(xx,yy,zz);
其中值得说明的是如何构造出对应的数据出来(xx, yy, zz)出来。下面通过一段标准的代码段进行展示如何构造出相应的数据。
x=-1:0.1:1;y=-1:0.1:1;[xx,yy]=meshgrid(x,y);zz=xx.*exp(-xx.^2-yy.^2);surf(xx,yy,zz);
其中meshgrid的作用就是生成网格(矩阵)数据xx,yy。观察xx,yy的数据为:
从图中可以看到实际上xx是将x复制了y的长度份,也就是将二维平面(x,y)按照x, y设定的步长分割成网络,自然对应的zz也应该是对应有网格x,y的各自长度的乘积个,如下图所示:
最后上段代码绘制出来的图像为:
其中还有一个值得说明的是plot3函数与plot函数用法类似,同样的按照类似mesh等的构造数据的方法,如果仅仅绘制在mesh图像中的某些数据点,就可以采用plot3函数实现。比如下段代码就可以实现绘制点,并且连线的功能:
x0 = 0; y0 = 0; z0 = 0;plot3(x0,y0,z0,'*k','linewidth',2,'markersize',10);plot3(indexcol,indexrow,z0,'*k','linewidth',2,'markersize',10);plot3(indexcol,indexrow,maxScore,'*k','linewidth',2,'markersize',10);xx2(1) = x0; xx2(2) = indexcol;yy2(1) = y0; yy2(2) = indexrow;zz2(1) = z0; zz2(2) = z0;plot3(xx2, yy2, zz2, 'r','linewidth',2);
结果如下图所示:
2015-8-18
艺少
1 0
- 使用Matlab绘制三维图的几种方法
- 使用matlab函数构建三维立方体的几种方法
- MATLAB 三维图形的绘制
- matlab 三维图像的绘制
- 用matlab绘制三维图
- Matlab画三维图的两种方法
- Matlab画三维图的方法
- matlab中三维散点图的绘制
- 基于matlab的三维柱状图绘制
- matlab如何绘制三维曲面图
- matlab绘制三维图形
- matlab绘制三维图形
- Matlab绘制三维曲面
- matlab绘制 三维剖面图
- matlab:绘制三维曲线
- MFC中使用teechart控件绘制二维及三维图的方法
- MATLAB绘制3D隐函数曲面的几种方法
- Matlab slice方法和包络法绘制三维立体图
- == 和 equal
- JAVA_SE基础——24.面向对象的内存分析
- RT-Thread finsh源码分析: finsh_node.c
- 【JS/读书随笔】JavaScript编程精解/Eloquent JavaScript:Chapter 6 面向对象编程
- 闲话js前端框架(2)——庞大的angularjs
- 使用Matlab绘制三维图的几种方法
- OpenGL ES TEXTURE_2D
- [BBS]搭建开源论坛之JForum安装使用札记
- 136. Single Number
- 今夜,我只听风
- ACM经典算法之数论
- 散列-分离链接法(数据结构与算法分析-C语言描述)
- 六度分离
- MongoDB学习二--MongoDB 数据结构和查询