matlab标量绘图
mesh or surf
常见不多说,注意xy为网格坐标,mesh类有meshc,meshz;surf类有surfc,surfl
x=linspace(-2,2,25);
y=linspace(-2,2,25);
[xx,yy]=meshgrid(x,y);
zz=sqrt(xx.^2+yy.^2);
subplot(221)
mesh(xx,yy,zz);
subplot(222)
surf(xx,yy,zz);
subplot(223)
meshz(xx,yy,zz);
subplot(224)
surfc(xx,yy,zz);
如图
contour
contour(x,y,z)基本用法和mesh相同
contour3(x,y,z,n)其中n控制等高线的稀密
[X,Y]=meshgrid([-3:0.3:3]);
Z=X.*exp(-(X.^2+Y.^2));
subplot(211)
contour(X,Y,Z);
title 二维等高
subplot(212)
contour3(X,Y,Z,30);
title 三维等高
等高图:
pcolor伪彩色图
x=linspace(-2,2,25);
y=linspace(-2,2,25);
[xx,yy]=meshgrid(x,y);
zz=sqrt(xx.^2+yy.^2);
pcolor(xx,yy,zz);
hold on
plot([0:20],[0:20],'r+'); % 绘制xx与yy相等的点
colorbar;
isosurfface隐函数图或等值面
[X,Y,Z]=meshgrid(linspace(-10,10));
V=X.^2+Y.^2-Z.^2;
isosurface(X,Y,Z,V,1);%绘制隐函数图像
axis equal
colormap([1 0 0]);
brighten(0.5);%进行增亮
camlight right;%设置光源位置
lighting phong;%设置光照模式
figure(2);
fv=isosurface(X,Y,Z,V,1);
p=patch(fv);%绘制等值面
set(p,'FaceColor','red','EdgeColor','none');
axis equal
peaks多锋函数
[x,y,z]=peaks;
peaks;
figure(2)
meshz(x,y,z);
figure(3)
surfc(x,y,z);
slice切片函数
slice(x,y,z,v,xi,yi,zi)
[x,y,z]=meshgrid(-2:0.16:2);
v=x.*y.*z.*exp(-(x.^2+y.^2+z.^2));
xslice=-1.2:0.8:2;yslice=2;zslice=[-2,0];%定义切片位置
slice(x,y,z,v,xslice,yslice,zslice)
colormap hsv