matlab有X,Y及Z值,Z值离散,为何不能画三维图?需要插值吗?
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/07 05:36:12
matlab有X,Y及Z值,Z值离散,为何不能画三维图?需要插值吗?
现在有了X,Y的横纵坐标值及每个点对应的Z值,但是用matlab的plot3画出的是线状不规则图.
现在想由这一万多个点画出光滑一点的连续曲面图,但是使用surf时总说Z值不是matrix.明明是的啊.
是不是需要插值才可以呢?
如果是的话,要如何插值呢?
万望大虾们不吝赐教!
现在有了X,Y的横纵坐标值及每个点对应的Z值,但是用matlab的plot3画出的是线状不规则图.
现在想由这一万多个点画出光滑一点的连续曲面图,但是使用surf时总说Z值不是matrix.明明是的啊.
是不是需要插值才可以呢?
如果是的话,要如何插值呢?
万望大虾们不吝赐教!
plot3用来画三维曲线图,不能画曲面图;
假设你的数据为
X=[1 2 3 4 5 6 7 8];%当然你的数据可能很复杂
Y=[2 3 4 5 6 7 8 9];
Z = 2 12 36 80 150 252 392 576
%我随意取的满足Z=X.^2*Y,当然你的Z不是很有规律,或者有你不知!
即有(x,y,z)共八组点,你想画出曲面图z=f(x,y)
可是你用surf画曲面图必须是对于X Y交叉的所有Z值都得已知,才可以画出!
>> [xx,yy]=meshgrid(X,Y)
xx =
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
yy =
2 2 2 2 2 2 2 2
3 3 3 3 3 3 3 3
4 4 4 4 4 4 4 4
5 5 5 5 5 5 5 5
6 6 6 6 6 6 6 6
7 7 7 7 7 7 7 7
8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9
即你应该知道所有的Z值,而不仅仅是(x,y)=(1,2),(2,3),(3,4),(4,5),(5,6),(6,7),(7,8),(8,9)点处对应的z值,只有这样才能画出你的曲面图
即想方法测出其他点的z值,只有获得了这些以后,才可以用插值函数interp2进行插值获得更精细的曲面图
即缩小区域及间隔
[x0,y0]=meshgrid(1:0.1:10,2:0.1:10)%当然你可以自己取范围与间隔
z0=interp2(X,Y,ZZ,x0,y0)%X,Y为你自己的数据,ZZ为我告诉你要获得的length(Y)行length(X)列的矩阵,得到的z0也为矩阵
surf(x0,y0,z0)%即画出你要的曲线图
希望我的回答能帮助你!
假设你的数据为
X=[1 2 3 4 5 6 7 8];%当然你的数据可能很复杂
Y=[2 3 4 5 6 7 8 9];
Z = 2 12 36 80 150 252 392 576
%我随意取的满足Z=X.^2*Y,当然你的Z不是很有规律,或者有你不知!
即有(x,y,z)共八组点,你想画出曲面图z=f(x,y)
可是你用surf画曲面图必须是对于X Y交叉的所有Z值都得已知,才可以画出!
>> [xx,yy]=meshgrid(X,Y)
xx =
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
yy =
2 2 2 2 2 2 2 2
3 3 3 3 3 3 3 3
4 4 4 4 4 4 4 4
5 5 5 5 5 5 5 5
6 6 6 6 6 6 6 6
7 7 7 7 7 7 7 7
8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9
即你应该知道所有的Z值,而不仅仅是(x,y)=(1,2),(2,3),(3,4),(4,5),(5,6),(6,7),(7,8),(8,9)点处对应的z值,只有这样才能画出你的曲面图
即想方法测出其他点的z值,只有获得了这些以后,才可以用插值函数interp2进行插值获得更精细的曲面图
即缩小区域及间隔
[x0,y0]=meshgrid(1:0.1:10,2:0.1:10)%当然你可以自己取范围与间隔
z0=interp2(X,Y,ZZ,x0,y0)%X,Y为你自己的数据,ZZ为我告诉你要获得的length(Y)行length(X)列的矩阵,得到的z0也为矩阵
surf(x0,y0,z0)%即画出你要的曲线图
希望我的回答能帮助你!
matlab有X,Y及Z值,Z值离散,为何不能画三维图?需要插值吗?
matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.
matlab画三维图命令曲面z=xy,x+y-1=0,z=0
matlab画三维网格曲面图Z=(X^2)/(4^2)-(Y^2)/(5^2)
怎么用matlab画以下函数的三维图(以x,y,z为坐标)
我想用matlab画z=x平方+y平方的三维图
如何用matlab画z=1/x+y^2的三维图?
怎么用matlab画以下函数的三维图(以x,y,z为坐标)?
请问如何用matlab绘制三维函数图,例如:z=x-y,(要求z>0)
已知x,y,z的三组数据,如何用matlab作出三维曲面图,z值大小决定颜色的差异
x*y=z 用MATLAB绘制三维图形
我想编一个MATLAB的程序,画一个三元函数的三维图,表达式f(x,y,z)=exp(-x^2-y^2-z^2),最好能