如何在matlab中把三维图中截张二维的平面
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/12 02:47:27
先ind=find(A==3);然后对ind的每一个值[I,J,K]=ind2sub(size(A),7)再问:可是3的个数不止一个啊怎么把I、J、K变成一个向量?如果我们知道3的个数为n,可以用I(
[x,y,z]=griddata(X,Y,Z,linspace(min(X),max(X))',linspace(min(Y),max(Y)),'v4');surf(x,y,z)或者mesh(x,y,
clc;clear;a=0:pi/100:pi;b=0:pi/100:pi;c=0:pi/50:2*pi;x=(sin(a)+sin(a+b)).*cos(c);y=sin(a)+cos(b);z=c
clf;shg,x=3*pi*(-1:0.05:1);y=x;[X,Y]=meshgrid(x,y);Z=X.*Y;h=surf(X,Y,Z);colormap(jet);axisoffn=12;mm
直接使用plot3函数呀,颜色的话在函数的参数里设定一下即可.这样的问题最好还是直接查看matlab的help吧,多动手才能提高.
eshape函数可以帮你,比如B=reshape(A,2,4,2);B就是你所求的新矩阵.再问:非常感谢
fill3([100340340100],[10301030280280],[500500500500],'w')
能不能说的更清楚点儿啊
plot3(X1,Y1,Z1);例如plot3(sin(t),cos(t),t) 再问:使用plot3()指令时,为什么出现errorusing*的程序错误?x=138*cos(t)再问:x
x=15:5:65;y=20:10:100;R=rand(9,11);mesh(x,y,R)
确实可以,画三维图时有一个命令可以绘出投影到平面上的等高线,还可以设置间距的.matlab蛮久没用了,具体命令不怎么记得了.你自己去找一下应该不难的吧
用plot3绘制,x=1,y&z取范围,最好用颜色标注一下
楼上各位没看清楼主的要求吧?楼主要的是“把三维图与它在xy的投影图同在同一坐标下”,并不是要二维投影.[x,y,z]=peaks;surf(x,y,z,'edgecolor','
设原三维数组为a,用permute(a(:,1,:),[132]):>> a=rand(2,3,4)a(:,:,1) =
因为数据是离散的,你的截面上的点不一定都有定义,这涉及到插值的问题.建议用多维插值.你可以定义一些点(比如用你提到的meshgrid())来对你要的截面进行采样,再通过griddata()或类似功能的
要进行插值,x不能有重复的数,必须x与y一一对应,形成数据对
=log10([0.0001 0.001 0.01 0.1 1]);[x y]=meshgrid(r);z=[0.3899 0.3829&n
E=50;x=[];y=[];z=[];n=1;x(1)=0.4;y(1)=0.3;z(1)=0;whileE>=0.1&&z(n)>=0fai=2*pi*rand;Theta=2*pi*rand;Q
x=[0,0,0,950,950,1900,1900,1900,2850,2850,3800,3800,3800];y=[-2000,0,2000,-1000,1000,-2000,0,2000,-1
clearall;clc;a=rand(90,90,22);n=size(a,3);forii=1:nb{ii}=a(:,:,ii);end