三维插值(MATLAB)——TriScatteredInterp/scatteredInterpolant函数
这两个函数功能是相同的,不过TriScatteredInterp是老版函数,MATLAB文档上不推荐使用。
函数功能
插入二维或三维散点数据
使用 scatteredInterpolant
对散点数据的二维或三维数据集执行插值。scatteredInterpolant
返回给定数据集的插值函数 F
。可以计算一组查询点(例如二维 (xq,yq)
)处的 F
值,以得出插入的值 vq = F(xq,yq)
。
创建对象
语法
F = scatteredInterpolant(x,y,v)
F = scatteredInterpolant(x,y,z,v)
F = scatteredInterpolant(P,v)
F = scatteredInterpolant(___,Method)
说明
创建一个拟合 v = F(x,y) 形式的曲面的插值。向量 F
= scatteredInterpolant(x
,y
,v
)x
和 y
指定样本点的 (x,y)
坐标。v
是一个包含与点 (x,y)
关联的样本值的向量。理解成一个三维曲面。
创建一个 拟合v = F(x,y,z) 形式的三维插值。可以理解为三维空间某一点(x,y,z)处的强度值为 v。F
= scatteredInterpolant(x
,y
,z
,v
)
以数组形式指定样本点坐标。F
= scatteredInterpolant(P
,v
)P
的行包含 v
中值的 (x, y) 或 (x, y, z) 坐标。
指定插值方法:F
= scatteredInterpolant(___,Method
)'nearest'
、'linear'
或 'natural'
。在前三个语法中的任意一个中指定 Method
作为最后一个输入参数。
计算位于查询位置 (xq
,yq
) 处的插值。
[xq,yq] = meshgrid(linspace(1,1000,500),linspace(1,400,20));
(注:y = linspace(x1,x2,n) 生成 n个点。这些点的间距为 (x2-x1)/(n-1)。)
xq:是一个500*20的矩阵,每行元素都相同;
yq:是一个500*20的矩阵,每列元素都相同;
vq = F(xq,yq);根据拟合出的函数方程F,给定自变量xq,yq,求出对应的高度值vq。
例子:
创建包含 50 个散点的样本数据集。这里有意使用较少的点数量,目的是为了突出插值方法之间的差异。
x = -3 + 6*rand(50,1);
y = -3 + 6*rand(50,1);
v = sin(x).^4 .* cos(y);
创建插值和查询点网格。
F = scatteredInterpolant(x,y,v);
[xq,yq] = meshgrid(-3:0.1:3);
使用 'nearest'
、'linear'
和 'natural'
方法绘制结果图。每当插值方法更改时,您都需要重新查询插值以获取更新后的结果。
F.Method = 'nearest';
vq1 = F(xq,yq);
plot3(x,y,v,'mo')
hold on
mesh(xq,yq,vq1)
title('Nearest Neighbor')
legend('Sample Points','Interpolated Surface','Location','NorthWest')
结果:
fromMATLAB文档:https://ww2.mathworks.cn/help/matlab/ref/scatteredinterpolant.html
三维插值(MATLAB)——TriScatteredInterp/scatteredInterpolant函数相关推荐
- matlab怎么生成三维等值线图,matlab画三维等值线图
=rand(500,1); >> y=randn(500,1); >> z=randn(500,1); >> scatter3(x,y,z,'p','r') 12 ...
- matlab 三维线性插值,MATLAB三维插值与拟合
MATLAB三维插值与拟合 插值和拟合都是数据优化的一种方法,当实验数据不够多时经常需要用到这种方法来画图.在matlab中都有特定的函数来完成这些功能.这两种方法的确别在于:当测量值是准确的,没有误 ...
- 基于MATLAB的二维与三维插值拟合运算(附完整代码)
· 一. 一维插值 interp1函数在上个博客中(如下链接)已经更新了,此处再补充两个相关例题. 基于MATLAB的数据插值运算:Lagrange与Hermite算法(附完整代码)_唠嗑!的博客-C ...
- Matlab三维折线图绘制–surf 函数的使用
Matlab三维折线图绘制–surf 函数的使用 最近在写毕业论文,整理数据需要绘制一个简单的三维图,简单做个分享! 先上结果图: 最后附上代码: clc,clear,close all; % f ...
- matlab中bitget函数用法_Matlab函数大全
目录 1.时间日期函数................................ ................................ ....................... ...
- matlab机械手ikine函数,matlab中robotics toolbox的函数解说
1. PUMA560的MATLAB仿真 要建立PUMA560的机器人对象,首先我们要了解PUMA560的D-H参数,之后我们可以利用Robotics Toolbox工具箱中的link和robot函数来 ...
- MATLAB命令与函数集合
转载自:http://www.cnblogs.com/coldair 1.常用命令-->管理命令和函数 addpath 添加目录到MATLAB搜索路径 doc 在Web浏览器上 ...
- matlab的tfdata函数_较全的matlab 命令和函数
d 菱形 -- 虚线 ^ 向上箭头 3.可以用subplot(3,3,1)表示将绘图区域分为三行三列,目前使用第一区域.此时如要画不同的图形在一个窗口里,需要hold on. ============ ...
- MATLAB信号处理工具箱函数列表分类
**现将MATLAB信号处理工具箱函数进行分组,便于记忆查询和长期回顾.(只解释基本用途,具体用法请在help目录下查询)** Waveform Generation(波形产生) chairp: 产生 ...
最新文章
- mysql 中limit 用法!!
- 《Redis官方文档》用Redis构建分布式锁(悲观锁)
- java8 求和_java8求和
- 解锁Android性能优化的五大误区!满满干货指导
- android面试题精选
- 数据库恢复子系统的常见技术和方案对比(一)
- python访问多个网页_如何使用python请求登录具有多个页面的CAS?
- 如何才能快速提高自己的能力?!
- [BX]和loop指令06 - 零基础入门学习汇编语言28
- 大型体育场馆应急照明设计
- java面试题,各大企业常见的java笔试题及答案(精华)
- 前端ORA-03113及后台ORA-07445[evaopn3()+135报错的处理
- wps下一步快捷键_WPS的快捷键有哪些
- 新谈:为什么你觉得FPGA难学?如何入门?
- 计算机网络基础练习题(附解析,考前必备)
- 用MDK调试AXF文件
- 工业镜头与普通镜头有什么区别?
- 基于李雅普诺夫函数的跟踪控制(一)
- 流批OLAP一体的flink引擎
- win7下搭建Nginx简单图片服务器
热门文章
- python pandas n行求和,Python 的 Pandas 对矩阵的行进行求和
- c++的提示类未定义_推荐一款适合初学者的C/C++IDE
- Android之父深入解析Android
- 主板没有rgb接口怎么接灯_性价比稳定的RGB水冷散热器:乔思伯天使眼TW2-240测评...
- mongodb mysql json数据类型_mongodb 数据格式补充
- 华三模拟器hcl实验手册_实验室 | # 实验室废气处理系统的设计#
- mysqldatareader对象有多少个方法_血压的正常范围是多少?牢记这6个降压方法,有效地预防高血压...
- 编译安装php7.3
- OSPF-1-OSPF的数据库交换(4)
- .Net Core 1.1打包发布到Linux