各位老铁们,大家好,今天由我来为大家分享matlab 三维图,以及matlab如何画三维图的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
matlab如何画三维图
1、plot3三维曲线图。
启动MATLAB,新建脚本(.m文件),在脚本编辑区输入以下代码,然后保存运行后,看到三维曲线图。
closeall;clearall;clc
z=linspace(0,10,101);
x=sin(z);y=cos(z);
plot3(x,y,z,'g','LineWidth',2)
holdon
plot3(x,y,z,'p','MarkerSize',10)
其中,linspace(a1,a2,N)是生成间距为(a2-a1)/(N-1)、个数为N的数组的命令。
2、mesh三维网格图。
在脚本编辑区紧接着输入以下代码,保存运行后,看到三维网格图。
[a,b,c]=peaks(50);
figure(2)
mesh(a,b,c)
axistight
其中,peaks(N)是生成一个凹凸有致的曲面,包含三个局部极大点及三个局部极小点的函数,其方程式略。
3、meshc除了生成网格图外,还在xy平面生成曲面的等高线。
将第二步中的mesh(a,b,c)改为meshc(a,b,c),然后保存运行后,看到三维网格图+等高线的效果。
4、meshz除了生成网格图外,还在曲线下面加上个矩形垂帘。
将第三步中的meshc(a,b,c)改为meshz(a,b,c),然后保存运行后,看到三维网格图+垂帘的效果。
5、surf三维着色曲面图。
将第四步中的meshz(a,b,c)改为surf(a,b,c),然后保存运行后,看到三维着色曲面图。
6、surfc同时画出三维着色曲面图与等高线。
将第五步的surf(a,b,c)改为surfc(a,b,c),然后保存运行后,看到三维着色曲面图+等高线的效果。
7、surfl带光照的三维着色曲面图图。
将第六步的surfc(a,b,c)改为surfl(a,b,c),然后保存运行后,看到带光照的三维着色曲面图。
8、添加shadinginterp去掉网格曲线,添加xlabel等坐标说明,添加title标题说明。输入以下代码,保存运行后,得到三维效果。
[a,b,c]=peaks(50);
figure(2)
surfl(a,b,c)
shadinginterp
xlabel('X');ylabel('Y');zlabel('Z')
title('peaks+surfl')
axistight
matlab怎么用三维矩阵画三维图
1、对于三维图形其有x、y、z三个坐标轴,数据也要按三维确定,如图所示,下面是部分单位数据样例。
2、首先需要将数据读取到MATLAB工作空间(workspace)中,使用xlsread()函数即可,使用绝对路径读取,因为不在MATLAB默认路径内。
3、接着,需要将x1、y1、z1数据分别从矩a中提取出来。
4、然后使用三维散点图函数scatter3()显示x1、y1、z1三组数据在空间上的点。
5、在画图的时候,数字肯定只有一组数据,运行代码holdon;即可读取第二组数据。
6、接着再次对x2、y2、z2数据绘制空间分布点,运行:scatter3(x2,y2,z2,'p');此处的p和k是一样的意思,代表的是五角星点。
7、接下来,在加上坐标轴即可,运行:xlabel('x'),ylabel('y'),zlabel('z')。
8、然后我们就完整的绘制好了三维图了。
如何用Matlab画三维矢量图
gama=linspace(0,pi/2,10)
theta=linspace(0,pi/2,10)
r=1;
[gg,tt]=meshgrid(gama,theta);%产生gama和theta的网格
Kx=sin(gg)*cos(tt);
Ky=-sin(gg)*sin(3*tt);
Kz=sin(gg)*sin(5*tt);
quiver3(r.*sin(tt).*cos(gg),r.*sin(tt).*cos(gg),r.*cos(tt),Kx,Ky,Kz)
%画矢量的命令,不知道你具体要实现什么,画的是在
%一个球面上,在球坐标为(1,tt,gg)的每一点处画一个(Kx,Ky,Kz)矢量
%二维矢量图用quiver(x,y,kx,ky),在x,y处画x分量为kx,y分量为ky的矢量
%三维矢量图用quiver3(x,y,z,kx,ky,kz),在x,y处画x分量为kx,y分量为ky的矢
matlab 三维图和matlab如何画三维图的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!