搜档网
当前位置:搜档网 › 用matlab绘制的漂亮图形

用matlab绘制的漂亮图形

用matlab绘制的漂亮图形
用matlab绘制的漂亮图形

用matlab绘制的漂亮图形

1.不同坐标系下的图形对比

theta=0:pi/20:4*pi;

phi= theta.^2- theta;

[t,p]=meshgrid(theta,phi);

r=t.*p;

subplot(1,2,1);mesh(t,p,r);

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

[x,y,z]=sph2cart(t,p,r);

subplot(1,2,2);mesh(x,y,z);

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

2.球曲面的法线

[x,y,z]=sphere;

Surfnorm(x,y,z)

3.

x=rand(100,1)*16-8;

y=rand(100,1)*16-8;

r=sqrt(x.^2+y.^2)+eps;

z=sin(r)./r;

xlin=linspace(min(x),max(x),33);

ylin=linspace(min(y),max(y),33); [X,Y]= meshgrid(xlin,ylin);

Z=griddata(x,y,z,X,Y);

mesh(X,Y,Z);

axis tight;hold on;

ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,’r’,’MarkerSize’,15)

x=rand(1000,1)*16-8;

y=rand(1000,1)*16-8;

r=sqrt(x.^2+y.^2)+eps;

z=sin(r)./r;

xlin=linspace(min(x),max(x),99);

ylin=linspace(min(y),max(y),99); [X,Y]= meshgrid(xlin,ylin);

Z=griddata(x,y,z,X,Y);

mesh(X,Y,Z);

axis tight;hold on;

ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,'r','MarkerSize',30);

去掉网格后:

4.圆通

fnplt(fncmb(rsmak(‘cylinder’,1,2),[0 0 -1;0 1 0;1 0 0])); axis equal,axis off;

shading interp

5.

c=8.01*10^(-6);

T=9.8*0.940*10^(-7);

for m=1:100

a=m/10000000;

for n=1:100

b=n/10000000;

omiga(m,n)=sqrt((10.6667*a^3*b^5+10.6667*a^5*b^3)/(2.3112*a^5*b^5*c)* T)/(2*pi);

end

end

mesh((1:100)/10000000,(1:100)/10000000,omiga);

ylabel('半短轴b');xlabel('半长轴a');zlabel('频率f');

6.马鞍面

x=-8:8; y=-8:8;

[X,Y]= meshgrid(x,y);

Z=(X.^2./4.^2-Y.^2./5.^2);

meshz(X,Y,Z);

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

x=-8:8;y=-8:8;

[X,Y]= meshgrid(x,y);

Z=X.^2./4.^2-Y.^2./5.^2;

surfc(X,Y,Z);

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

7.螺旋线

t=0:pi/60:10*pi;

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

plot3(x,y,t,'*-b');

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

t=0:pi/60:10*pi;

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

fill3(x,y,t,'*-b');

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

8.

[x,y]= meshgrid([-2:0.2:2]); f=x.^2+y.^2;

[fx,fy]= gradient(f,0.2,0.2); quiver(x,y,fx,fy);

hold on

contour(x,y,f);

9.

[x,y]= meshgrid([-4:0.1:4]); z=x.*exp(-x.^2-y.^2);

plot3(x,y,z);

10. [x,y]= meshgrid([-2:0.05:2]); z=x.*exp(-x.^2-y.^2);

surf(x,y,z);

11.牛顿环(动态的)

clear

R=1;N=400;lamda=200e-9;rr=0.0017; [x,y]= meshgrid(linspace(-rr,rr,N)); r=sqrt(x.^2+y.^2);

phi=r.^2/R./lamda.*pi.*2+pi;

I=4.*cos(phi./2).^2;

H=imshow(I);

t=0;k=1;

while k;

s=get(gcf,'currentkey');

if strcmp(s,'space');

clc;k=0;

end

t=t+0.01;

pause(0.2);

phi=phi+t;

I=4.*cos(phi./2).^2;

set(H,'CData',I);

end

12.衍射调制下的双孔干涉条纹clear all

lambda=500e-9;D=1;d=1e-6;a=3.5*d;

ymax=10*lambda*D/a;xmax=ymax;

N=101;

xs=linspace(-xmax,xmax,N);

ys=linspace(-ymax,ymax,N);

for i=1:N;

for j=1:N;

r1(i,j)=sqrt(D.^2+(ys(i)-a./2).^2+xs(i).^2);

r2(i,j)=sqrt(D.^2+(ys(j)-a./2).^2+xs(j).^2);

Dr=r2-r1;

phi(i,j)=Dr(i,j)./lambda.*pi.*2;

m(i,j)=pi.*d.*sin(phi(i,j))./lambda;

I(i,j)=(4.*cos(phi(i,j)./2).^2).*real((2.*besselj(1,m(i,j))./m(i,j)). ^2);

end

end

NC=225;

Ir=I*NC;

subplot(1,2,1);

image(xs,ys,Ir);

axis equal

colormap(gray(NC));

subplot(1,2,2);

plot(I,m),hold on

lambda=600e-9;D=1;d=1e-6;a=2.5*d;

ymax=10*lambda*D/a;xmax=ymax;

N=101;

xs=linspace(-xmax,xmax,N);

ys=linspace(-ymax,ymax,N);

for i=1:N;

for j=1:N;

r1(i,j)=sqrt(D.^2+(ys(i)-a./2).^2+xs(i).^2);

r2(i,j)=sqrt(D.^2+(ys(j)-a./2).^2+xs(j).^2);

Dr=r2-r1;

phi(i,j)=Dr(i,j)./lambda.*pi.*2;

m(i,j)=pi.*d.*sin(phi(i,j))./lambda;

I(i,j)=(4.*cos(phi(i,j)./2).^2).*real((2.*besselj(1,m(i,j))./m(i,j)). ^2);

end

end

NC=225;

Ir=I*NC;

colormap(gray(NC));

plot(m,I),hold on

13.

lambda=500e-9;D=1;d=1e-6;a=3.5*d;

ymax=10*lambda*D/a;xmax=ymax;

N=101;

xs=linspace(-xmax,xmax,N);

ys=linspace(-10000*ymax,10000*ymax,N);

for i=1:N;

for j=1:N;

r1(i,j)=sqrt(D.^2+(ys(i)-a./2).^2+xs(i).^2);

r2(i,j)=sqrt(D.^2+(ys(j)-a./2).^2+xs(j).^2);

Dr=r2-r1;

phi(i,j)=Dr(i,j)./lambda.*pi.*2;

I(i,j)=real(4.*cos(phi(i,j)./2).^2);

end

end

NC=225;

Ir=I/3.*NC;

image(xs,ys,Ir);

colormap(gray(NC));

hold on

14.沙丘

figure( 'Position',[200 31 700 696],'color','w'); hold on ;axis equal ; axis off

title('沙丘','fontsize',16,'color','k');

text(180,480,'——万祎龙 ','fontsize',12,'color','k');

i=1;

for py=1:2:360

c=py*4*pi/360;

b=pi*cos(c);

a=0:pi/30:6*pi;

x=100*a/pi+20;

y=10*sin(a+cos(a)*pi-b)*cos(c)+py;

plot(x,y,'color','k');

Z(i,:)=sin(a+cos(a)*pi-b)*cos(c);

i=i+1;

end

15.

%存脚本文件heart.m

%%一个半径为R的圆周等分成N份,然后一等分点为圆心,以等分点到该圆垂直直径

%%的距离为半径画圆。

N=90;R=1;

t0=(1:N)*2*pi/N; %%中央圆

x0=R*cos(t0);

y0=R*sin(t0);

t1=linspace(0,2*pi,100); %运动圆

X=cos(t1);

Y=sin(t1);

figure('color','k');

hold on

for i=1:N

x=x0(i)+x0(i)*X;

y=y0(i)+x0(i)*Y;

plot(x,y,'g');

end

axis equal

axis off

16.

figure('color','k','Position',[1 31 1280 696]);

axes1=axes('position',[0.2 0.6 0.3 0.3]);

axis( axes1,'equal');

axis(axes1,'off');

hold on

rl=1;rs=0.5;

N=30;

t1=linspace(0,2*pi,N); xl=rl*cos(t1); yl=rl*sin(t1); t2=linspace(0,2*pi,100); xs=rs*cos(t2); ys=rs*sin(t2);

for i=1:N

plot(xl(i)+xs,yl(i)+ys);

end

axes2=axes('position',[0.5 0.6 0.3 0.3]);

axis( axes2,'equal');

axis(axes2,'off');

hold on

rl=1;rs=1;

N=30;

t1=linspace(0,2*pi,N); xl=rl*cos(t1); yl=rl*sin(t1);

t2=linspace(0,2*pi,100); xs=rs*cos(t2); ys=rs*sin(t2);

for i=1:N

plot(xl(i)+xs,yl(i)+ys);

end

axes3=axes('position',[0.35 0.20 0.3 0.3]);

axis( axes3,'equal');

axis(axes3,'off');

hold on

rl=1;rs=1.5;

N=30;

t1=linspace(0,2*pi,N); xl=rl*cos(t1); yl=rl*sin(t1);

t2=linspace(0,2*pi,100); xs=rs*cos(t2); ys=rs*sin(t2);

for i=1:N

plot(xl(i)+xs,yl(i)+ys);

end

17. %%一个半径为R的圆周等分成N份,然后一等分点为圆心,以等分点到定点%%的距离为半径画圆。

N=60;R=1;

t0=(1:N)*2*pi/N; %%中央圆

x0=R*cos(t0);

y0=R*sin(t0);

t1=linspace(0,2*pi,100); %运动圆X=cos(t1);

Y=sin(t1);

figure('color','k');

hold on

for i=1:N

Rm=(x0(i)^2+(y0(i)-1)^2)^.5; x=x0(i)+Rm*X;

y=y0(i)+Rm*Y;

plot(x,y,'color','r');

end

axis equal

axis off

18.

%存函数文件diamond.m

function diamond

N=20;

t=linspace(0,2*pi,N);

y=sin(t);

相关主题