Matlab绘制三维表面模型说明

首先将excel表中的数据加载到matlab中

有两种较为简单的方法(可以直接读取excel,但是你只是要图的话没必要这么复杂,所以就不提这一种了,只说两种简单的方法)

①在matlab主页点击导入数据→选择你的数据文件→选中要用的数据,将数据类型改成数值矩阵,矩阵名称改为pointTab→点击导入所选内容,完成数据加载,此时在工作区可以看见我们导入的数据。

②打开excel表,选中需要导入的数据,复制→在matlab的工作区新建一个数值矩阵,命名为pointTab→双击打开这个矩阵,在变量区域粘贴刚才复制的数据即可。

然后进行数据预处理

分析这个数据发现平面坐标是规则的,如下图所示:

既然是规则的,那就好办了,不需要插值等一系列操作,直接把数据整理成符合mesh函数需要的格式即可。(mesh函数需要的数据是三个等大的矩阵,三个矩阵分别对应存储三维坐标X、Y、Z)

发现平面坐标的步长为25,则对应矩阵的行列计算如下:

x = pointTab(:,1)/25+1;

y = pointTab(:,2)/25+1;

即坐标值除以25再加一就是当前三维坐标分别在自己矩阵中对应的行列号,计算出行列号并将值存储进去即可,代码如下:

[r,~] = size(x);

for i = 1:1:r

row = x(i);

col = y(i);

X(row,col) = pointTab(i,1);

Y(row,col) = pointTab(i,2);

Z(row,col) = pointTab(i,3);

end

绘制表面模型

代码如下:

surf(X,Y,Z);

后续优化操作可以在代码里简单写写,也可以在图形界面交互操作,不在赘述。效果图如下:

另附完整代码如下:

%{本实例用于将一组简单三维离散点构建曲面模型并显示导入数据为n个点的三维坐标(n行3列的数值矩阵pointTab)显示成果为该导入数据经过整理生成的三维曲面模型by Mr.Chai%}rowTab = pointTab(:,1)/25+1; % 将x坐标换算成矩阵的行comTab = pointTab(:,2)/25+1; % 将y坐标换算成矩阵的列[r,~] = size(pointTab);      % 获取pointTab中点的个数for i = 1:1:r    row = rowTab(i); % 当前点对应的矩阵行号    col = comTab(i); % 当前点对应的矩阵列号    X(row,col) = pointTab(i,1); % 将当前点的x坐标写入X矩阵的row行,col列处    Y(row,col) = pointTab(i,2); % 将当前点的y坐标写入Y矩阵的row行,col列处    Z(row,col) = pointTab(i,3); % 将当前点的z坐标写入Z矩阵的row行,col列处end%绘制曲面figure(1);        % 新建一个图层surf(X,Y,Z);      % 绘制曲面模型shading interp;   % 去除表面模型的黑框线colormap(jet);    % 假彩色渲染colorbar;         % 显示色度条msgbox '恭喜你,你的代码运行完毕!';

matlab三维矩阵_Matlab绘制三维表面模型说明相关推荐

  1. matlab 根据顶点坐标绘制三维立方体(当部分边有权值时)

    matlab 根据顶点坐标绘制三维立方体棱线(当部分边有权值时,有更多的边时方法是类似的) a25=load('xx0.25');%顶点x坐标,大立方体外表面棱边权值为0.25的边的两顶点x坐标,第一 ...

  2. matlab绘三维椭球面_Matlab绘制曲面

    本文整理了一些三维绘图的内容,代码都比较简单 1.surf.surfc.surfl之后可以试试shading interp 2.绘制隐函数 3.参数方程绘制曲面 4.三维到平面:等高线+引力线 5.快 ...

  3. Matlab由三维散点绘制三维曲面(含等高线,剖面图)

    绘图描述:由若干个给定的三维散点(x,y,z)绘制一个三维的曲面,具体的效果如图: 伪彩图: 等高线: 三维曲面(深色): 三维曲面(浅色)+等高线: 剖面图: Matlab 程序如下: 其中A就是我 ...

  4. Matlab一维矩阵无法与三维矩阵进行矩阵乘法?

    解决方法 貌似Matlab只支持一维与二维,二维与三维的矩阵乘法.把高维矩阵降维就能解决了,但是需要注意降维之后矩阵乘法是否结果一致.stackoverflow的回答

  5. matlab 三nurbs,nurbs 绘制 三维、二维图形,网格细化,基函数求解等 包 matlab 238万源代码下载- www.pudn.com...

    文件名称: nurbs下载 收藏√  [ 5  4  3  2  1 ] 开发工具: matlab 文件大小: 334 KB 上传时间: 2013-03-16 下载次数: 18 提 供 者: 吴紫俊 ...

  6. matlab中三维非线性拟合,matlab非线性拟合与绘制三维曲面

    建议用1stOpt,使用简单,不用猜初值,拟合效果非常强.下面是由1stOpt得出的结果,应该是唯一最优解.如果用其它软件,估计花费时间不少还不一定能得到最优解. 均方差(RMSE): 2.88773 ...

  7. python画三维立体图-python绘制三维图

    作者:桂. 时间:2017-04-27 23:24:55 本文仅仅梳理最基本的绘图方法. 一.初始化 假设已经安装了matplotlib工具包. 利用matplotlib.figure.Figure创 ...

  8. matlab应力云图_Matlab绘制二维应力云图

    自己研究了下用Matlab绘制二维应力云图的方法,三维应力云图的绘制可以以此类推. 实现的方法主要是运用fill函数,三维情形应该是fill3函数. 这里我们以一个四边形的例子来说明. 如上图所示的四 ...

  9. matlab 定义矩阵_MATLAB与Python,Mathematica由高维转化一维矩阵的方式的不同

    在进行数据处理的时候,我比较喜欢的数据存储方式是所有的数据都保存成MATLAB的".mat"文件,这种格式Python,Mathematica,MATLAB都会支持.不过在转化的时 ...

  10. MATLAB 之 绘制三维图形的基本函数、三维曲面和其他三维图形

    文章目录 一.绘制三维曲线的基本函数 二.三维曲面 1. 平面网格坐标矩阵的生成 2. 绘制三维曲面的函数 3. 标准三维曲面 三.其他三维图形 1. 三维条形图 2. 三维饼图 3. 三维实心图 4 ...

最新文章

  1. Github开源趋势榜Top 1:英伟达升级发布二代StyleGAN,效果更完美
  2. 一个大数据排序问题的巧妙解法
  3. 2apt-get命令,deb包安装,源码安装
  4. easyVMAF:在自然环境下运行VMAF
  5. 【详解】CPU执行算术运算或逻辑运算时,常将源操作数和结果暂存在()中
  6. 记一次SAP开发工程师给微软Azure报incident的体验
  7. NumPy学习_00 ndarray的创建
  8. BZOJ.3938.Robot(李超线段树)
  9. SheetForm.cs
  10. atitit.为什么技术的选择方法java超过.net有前途
  11. js做四则运算时,精度丢失问题及解决方法
  12. python模块:调用系统命令模块subprocess等
  13. psd文件用什么打开?如何修改psd文件?psd样式怎么修改文字?
  14. ai带来的革命_AI革命就在这里。 这与我们预期的不同。
  15. 稻盛和夫经典著作----《心》读后感
  16. 【MATLAB小游戏】养鱼
  17. R7 5800H 3060 ubuntu20 配置全纪录(一)主要包括:N卡驱动、网卡驱动、virtualenv、CUDA and pytorch
  18. 安全攻访策略:PDR模型
  19. [转载]软件常见的各种版本英文缩写
  20. 【opencv】opencv窗口创建、大小调整等问题

热门文章

  1. java之split用法注意
  2. Python命令行模式下调试程序
  3. [NOIP2015] 运输计划
  4. 结队编程思路及感悟(python、tkinter、mysql、腾讯云短信等)
  5. JavaScript基础1
  6. JavaScript学习笔记——对表单的操作
  7. Delphi读写UTF-8、Unicode格式文本文件
  8. 创建型模式专题总结:Creational Pattern(转自Terrylee)
  9. 【编程语言】【Ruby】语言介绍
  10. 图像处理基础(8):图像的灰度直方图、直方图均衡化、直方图规定化(匹配)