当前位置:首页 > 代码 > 正文

matlab三维图代码(三维图matlab函数)

admin 发布:2022-12-19 20:02 184


今天给各位分享matlab三维图代码的知识,其中也会对三维图matlab函数进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

matlab如何画三维图

1、plot3三维曲线图。

启动MATLAB,新建脚本(.m文件),在脚本编辑区输入以下代码,然后保存运行后,看到三维曲线图。

close all;clear all;clc

z=linspace(0,10,101);

x=sin(z);y=cos(z);

plot3(x,y,z,'g','LineWidth',2)

hold on

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)

axis tight

其中,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、添加shading interp去掉网格曲线,添加xlabel等坐标说明,添加title标题说明。输入以下代码,保存运行后,得到三维效果。

[a,b,c]=peaks(50);

figure(2)

surfl(a,b,c)

shading interp

xlabel('X');ylabel('Y');zlabel('Z')

title('peaks+surfl')

axis tight

求高手告知matlab 三维封闭图形,的代码

实际图形是被三个相互正交的圆柱面包围的封闭部分,是

圆柱面x∧2+y∧2=1,被限定在y∧2+z∧2=1和z∧2+x∧2=1截断

圆柱面y∧2+z∧2=1,被限定在x∧2+y∧2=1和z∧2+x∧2=1截断

圆柱面z∧2+x∧2=1,被限定在x∧2+y∧2=1和y∧2+z∧2=1截断

上诉三个截断圆柱面个共同包围的部分

可以先画出其中一种情况的圆柱面,在用坐标轮换对称的办法画出另外两个

以下为matlab代码

%先考虑x^2+y^2=1圆柱面

%被限定在y^2+z^2=1,z^2+x^2=1范围内的曲面

%用柱坐标的话,x^2+y^2=1圆柱面,半径都是1,角度范围[0,360],z范围[-1,1]

%x取值是角度的余弦值,y取值是角度的正弦值

%而z本来范围是[-1,1],但是被条件y^2+z^2=1,z^2+x^2=1限制

%被限定在[-sqrt(1-x.^2),sqrt(1-x.^2)]与[-sqrt(1-xy.^2),sqrt(1-y.^2)]两者中较小的范围

%根据对称性,再轮换x,y,数据可以画出另外两个被截的圆柱面

th=linspace(0,360,49);%theta方向 [0,360]分49,分8N+1比较好

zz=linspace(-1,1,21)';%z方向分21格,分奇数个比较好,

xx=cosd(th); %计算x

yy=sind(th); %积算y

z=zz*min([sqrt(1-xx.^2);sqrt(1-yy.^2)]);%计算z范围并扩展为矩阵

x=repmat(xx,[length(zz),1]);%扩展x矩阵

y=repmat(yy,[length(zz),1]);%扩展y矩阵

surf(x,y,z,'edgecolor','k');hold on; %画备被截圆柱面

surf(y,z,x,'edgecolor','k');         %画另外两个方向圆柱面

surf(z,x,y,'edgecolor','k');hold off;

axis equal;

xlabel('x');ylabel('y');zlabel('z');

MATLAB怎么画三维图?

对于已知三个变量(进出口温度,流量,热负荷)的已知数据,可以按下列方法来实现。

x=[。。。]%流量

y=[。。。]%进出口温度

z=[。。。]%热负荷

[xq,yq] = meshgrid(0:1:60,40:10:160);%建立X-Y网格数据,括号内的数据为x、y的范围,应根据具体问题来确定

z1 = griddata(x,y,v,xq,yq,'nearest');%对样本数据插值

mesh(xq,yq,z1) %绘制曲面图

hold on %对于多组数据,应加此命令,其意思可以在同一绘图窗口中绘制每组数据三维图。

然后,重复上述命令,处理下一组数据。

。。。。。。

legend('冷却器1','冷却器2','冷却器3',。。。,'NorthWest') %图例标注

xlabel('流量/kg*s^-1'),ylabel('温度/℃'),zlabel('热负荷/kW') %标注坐标轴名称及单位

求助MATLAB画三维图,如图所示的条件

绘制其三维图,可以按下述方法来解决。

1、首先应给出的两个表达式进行变形处理,即r0(λ)→λ(r0),r0(ζ)→ζ(r0);

2、然后取r0=0~0.5的之间若干值,再计算λ(r0)和ζ(r0)值;

3、最后用plot3函数绘出其三维图

4、实现代码:

clc

r0=linspace(0,0.5,50);

lambda=(r0/2e5).^(10/3)   %λ

zeta=asec(1./(r0/2e5).^(5/3))  %ζ

plot3(r0,lambda*1e18,zeta)

xlabel(#x27;r0#x27;),ylabel(#x27;λ×10^{-18}#x27;),zlabel(#x27;ζ#x27;)

运行程序,可得到如下图形。

关于matlab三维图代码和三维图matlab函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/21947.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载