%% ======切片图和切片等位线图======= %利用 slice 和 contourslice 表现 MATLAB 提供的无限大水体中水下射流速度数据 flow 。 flow 是一组定义在三维空间上的函数数据。 %在本例中,从图中的色标尺可知,深红色表示“正速度”(向图的左方),深蓝表示“负速度”(向图的右方)。 % 以下指令用切面上的色彩表现射流速度 [X,Y,Z,V]=flow; % 取 4 个 的射流数据矩阵, V 是射流速度。 x1=min(min(min(X)));x2=max(max(max(X))); % 取 x 坐标上下限 y1=min(min(min(Y)));y2=max(max(max(Y))); % 取 y 坐标上下限 z1=min(min(min(Z)));z2=max(max(max(Z))); % 取 z 坐标上下限 sx=linspace(x1+ 1.2 ,x2, 5 ); % 确定 5 个垂直 x 轴的切面坐标 sy= 0 ; % 在 y= 0 处,取垂直 y 轴的切面 sz= 0 ; % 在 z= 0 处,取垂直 z 轴的切面 figure; slice(X,Y,Z,V,sx,sy,sz); % 画切片图 view([- 12 , 30 ]);shading interp;colormap jet;axis off;colorbar; % 以下指令用等位线表现射流速度 v1=min(min(min(V)));v2=max(max(max(V))); % 射流速度上下限 cv=linspace(v1,v2, 15 ); % 在射流上下限之间取 15 条等位线 figure; contourslice(X,Y,Z,V,sx,sy,sz,cv);view([- 12 , 30 ]); colormap jet;colorbar;box on; |