matlab如何绘制三维曲面图
1、第一步,双击matlab软件图标,打开matlab软件,可以看到matlab软件的界面。
2、第二步,创建两个数组u和v,其中,u=-9:0.1:9;v=-9:0.1:9;这两个数组表示在三维区间的x轴和y轴的指定区域。
3、第三步,使用语句,[x,y]=meshgrid(u,v);将数组u和v指定的区域,转换为矩阵x和y。
4、第四步,创建函数z=3*y.*sqrt(x.^2+y.^2);该函数表示绘制的三维曲面图的z坐标。
5、第五步,使用函数surf(x,y,z);绘制三维曲面图。
6、第六步,使用函数title()给三维曲面图添加标题,使用函数xlabel()、ylabel()、zlabel()给三维曲面图添加坐标轴名称。
7、第七步,使用语句grid on;给三维曲面图添加坐标分割线,也成为网格线。
8、第八步,查看三维曲面图,注意查看它的标题、坐标轴、网格分割线。
已知excel数据如何用MATLAB绘制其三维图形
用File菜单下的Import Data子命令读取数据若画三维曲线,则直接用plot3(x,y,z)若画三维曲面图,则先用meshgrid生成网格再画
matlab如何将离散点拟合成曲面
你的问题可以这样来解决。
1、根据你的数据x、y、z,先通过matlab的拟合函数,拟合出z(x,y)的表达式,再用meshgrid函数进行网格化,最后用mesh函数绘出其三维曲面图。
2、主要代码书写格式%求拟合系数x=[。。。]; y=[。。。]; z=[。。。]; X=[x y]; Y=z;func=@(a,x) a(1).*x(:,1).^2+ a(2).*x(:,2).^2 %表达式为假定的a0=[。。。] %拟合系数的初值a= nlinfit(X,Y,func,a0); %求 拟合系数%绘制曲面图x=x0:(xn-x0)/n:xn %x0最小值,xn最大值,即x的范围y=y0:(yn-y0)/n:yn %y0最小值,yn最大值,即y的范围[X,Y]=meshgrid(x,y) %网格化Z=a(1).*X.^2+ a(2).*Y.^2 %计算Z值mesh([X,Y,Z) %三维曲面图
Matlab三维图形绘制
不论是在科研工作中,还是在实际工程应用中,常常会遇到三维或者更多维数据的处理,并且将处理的数据在图形中显示出来,MATLAB平台也提供了很多关于三维图形绘制的函数,利用这些函数可以很方便的实现三维图形的绘制,以下主要讲解Matlab中关于三维图形绘制相关的函数。
1、调用plot3函数来绘制三维曲线图,调用格式如下:
plot3(x1,y1,z1,’PropertyName’,’PropertyValue’...);
其中PropertyName表示属性名,可以是颜色,线型,线宽等属性,PropertyValue表示属性值,对应属性名所包含的各种属性值。
该函数调用对应的m文件如下:
clear all;%%表示清空所有变量及变量值%%
t=0:pi/360:2*pi;
x=sin(t);
y=cos(t);
z=2*x.^2+y.^2;
plot3(x,y,z,'Color','r','LineWidth',2);
%%三维曲线坐标轴和标题的设置%%
xlabel('x');
ylabel('y');
zlabel('z');
title('三维曲线图');
axis([-1.2 1.2 -1.2 1.2 0.5 2.2];
m文件操作及运行结果如下:
2、调用surf、surfc(得到含有等高线的三维曲面图)、surfl(带灯光的三维曲面图)三个函数来绘制三维曲面图,调用格式如下:
surf(x,y,z,’PropertyName’,’PropertyValue’...)
调用该函数对应m文件如下:
t=-2:0.1:2;
[x,y] =meshgrid(t);%%表示区域网格控制,目地是为了让x,y形成格点矩阵%%
z=5*x.^2+8*y^3;
surf(x,y,z);
%%设置三维曲面x轴,y轴,z轴,标题对应内容及三个坐标轴的取值范围%%
xlabel('X');
ylabel('Y');
zlabel('Z');
title('surf三维曲面图');
axis([-2.5 2.5 -2.5 2.5 -5 25]);
m文件操作及运行结果如下:
3、调用mesh、meshc(得到含有等值线的三维网格图)、surfz(用于绘制包含零平面的网格线)三个函数来绘制三维曲面图,调用格式如下:
mesh(x,y,z,’PropertyName’,’PropertyValue’...)
t=-2:0.1:2;
[x,y] =meshgrid(t);%%表示区域网格控制,目地是为了让x,y形成格点矩阵%%
z=5*x.^2+8*y^3;
mesh(x,y,z);
%%设置三维曲面x轴,y轴,z轴,标题对应内容及三个坐标轴的取值范围%%
xlabel('X');
ylabel('Y');
zlabel('Z');
title('mesh三维网格图');
axis([-2.5 2.5 -2.5 2.5 -5 25]);
m文件操作及运行结果如下:
4、调用contour3函数绘制三维等高线图,调用格式如下:
contour3(z,n);
contour3(x,y,z,n);
编写该函数调用的m文件,如下:
[x,y]=meshgrid(-1.5:0.01:1.5);
z=x.*exp(-x.^2-2*y.^2);
contour3(x,y,z,15);
grid off;%%关闭网格%%
%%设置三维等高线x轴,y轴,z轴,标题对应内容及三个坐标轴的取值范围%%
xlabel('X');
ylabel('Y');
zlabel('Z');
title('contour3三维等高线图');
axis([-1.5 1.5 -1.5 1.5 -0.5 0.5]);
m文件操作及运行结果如下:
5、特殊三维图形绘制
对上面所讲的四种特殊三维图形进行绘制,首先编写对应的m文件如下:
clear all;
t=0:pi/20:2*pi;
[x,y,z]=cylinder(1+cos(t));
subplot(2,2,1)
surf(x,y,z);
axis([-3 3 -3 3 0 1]);
title('三维柱面图形');
subplot(2,2,2)
sphere;
axis([-1 1 -1 1 -1 1]);
title('三维球体图形');
subplot(2,2,3)
a=[1 2 2.5 3 1.5];%%各部分所占的比例%%
b=[0 0 1 0 0];%%0,表示不单独分离出来,1表示分离出来表示%%
pie3(a,b);
title('三维饼状图形')
subplot(2,2,4)
[X2,Y2]=meshgrid(-2:0.25:2);
Z2=peaks(X2,Y2);
ribbon(Y2,Z2);
title('三维彩带图形');
m文件操作及运行结果如下:
版权声明:本文来自用户投稿,不代表【匆匆网】立场,本平台所发表的文章、图片属于原权利人所有,因客观原因,或会存在不当使用的情况,非恶意侵犯原权利人相关权益,敬请相关权利人谅解并与我们联系(邮箱:dandanxi6@qq.com)我们将及时处理,共同维护良好的网络创作环境。