Matlab Experience
不常用但是又没那么不常用的东西之Matlab。
0
%将多个Figure放入一个Figure。
subplot(n,m,s); %将一个Figure分为$n \times m$个区域。s表示mesh() 对应的Figure放入第s个区域。
mesh(z);
1
%绘制三元函数的图形,三元函数对应“体积”,二元函数对应“平面”
clear
[x,y,z]=meshgrid(1:0.1:10,1:0.1:5,2:0.1:5);
v=x.^2+3*x.*y+4*y.*z;
xslice=[2,5,8];%指定切片的位置
yslice=2;
zslice=[2,4];
slice(x,y,z,v,xslice,yslice,zslice) %绘制切片图
colormap hsv %指定颜色变化模式,无关紧要。
2
%绘制三原函数的等值面
range=linspace(-6,6,100);
[x,y,z]=meshgrid(range,range,range);%生成一定定义域内x,y,z矩阵
v=x.^2+y.^2-z.^2;%计算函数数值,
p = patch(isosurface(x,y,z,v,4,x));%用isosurface画等值面,第五个变量“4”控制画哪一个等值面,第6个变量控制颜色渐变的方向,“x”即沿x轴渐变
%等值面是三角网格表示的,用patch函数之后,更容易修改曲面颜色等
p.FaceColor = 'none';
p.EdgeColor = 'interp';
daspect([1,1,1])
view(3);
axis tight
grid on;
xlabel('x'),ylabel('y'),zlabel('z');
view(45,30); %调整视角