matlab简单绘图plot,subplot

a1,二维绘图plot的实现

subplot(n,m,x),建立一个m*n的绘图区域,然后分别在其x=1,2,3,4...区域绘制图像。

function [] = plot1()
x=0:0.35:7;
y=2*exp(-0.5*x);
subplot(2,2,1);bar(x,y,'g');
title('bar(x,y,''g'')');axis([0, 7, 0 ,2]);
subplot(2,2,2);fill(x,y,'r');
title('fill(x,y,''r'')');axis([0, 7, 0 ,2]);
subplot(2,2,3);stairs(x,y,'b');
title('stairs(x,y,''b'')');axis([0, 7, 0 ,2]);
subplot(2,2,4);stem(x,y,'k');
title('stem(x,y,''k'')');axis([0, 7, 0 ,2]);

绘制的图形如下所示:

bar(x,y,'g'):柱形图

fill(x,y,'r'):填充

stairs(x,y,'b'):梯形图

stem(x,y):茎状图

 

2,三维绘图简单应用:

function [] = plotThree()

% x=sin(theta),y=cos(theta),z=cos(4*theta)
theta = 0:0.01*pi:2*pi;

x = sin(theta);

y = cos(theta);

z = cos(4*theta);

subplot(2,2,1);

%打开坐标显示
%axis on 

plot3(x,y,z,'LineWidth',2);

hold on;

% x=sin(theta),y=cos(theta),z=cos(4*theta)
theta = 0:0.02*pi:2*pi;

x = sin(theta);

y = cos(theta);

z = cos(4*theta);
subplot(2,2,2);
plot3(x,y,z,'rd','MarkerSize',10,'LineWidth',2);


% 准备数据
%meshgrid网络点,二维数据
[X,Y]  = meshgrid(-1:0.1:1);

Z = sin(X.^2.*pi) + cos(Y.*pi);

% 设置无限远平行光源光照效果

subplot(2,2,3);

%创建一个三维曲面图
surf(X,Y,Z);

%在当前坐标区中创建一个光源。光源仅影响补片和曲面图对象。
light('Style','infinit','Position',[0 -0.6 1]);

title('无限远平行光')

% 设置本地光源辐射源光照效果

subplot(2,2,4);

surf(X,Y,Z);

light('Style','local','Position',[0 -0.6 1]);

title('本地辐射光')

显示如下:

 

3,三维图绘画:

function [] = plotshere()

[x,y,z] = sphere(25);

subplot(3,4,1);surf(x,y,z);

axis equal;shading interp;

hold on;

title('lighting none')

subplot(3,4,2);surf(x,y,z);

axis equal;

light('position',[0,0.5 1]);

shading interp;lighting flat;

hold on;

title('lighting flat');

subplot(3,4,3);surf(x,y,z);

axis equal;

light('position',[0,0.5 1]);

shading interp;lighting gouraud;

hold on;

title('lighting gouraud');

subplot(3,4,4);surf(x,y,z);

axis equal;

light('position',[0,0.5 1]);

shading interp;lighting phong;

hold on;

title('lighting phong');

subplot(3,4,5);

set(gcf,'color','w');


sphere(25);

axis vis3d

h = light;

for az = -50:10:50

    lightangle(h,az,30)

    pause(.2)

end



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

[X1,Y1,Z1] = cylinder(2 + cos(t));

subplot(3,4,6);surf(X1,Y1,Z1)

axis square;title('三维柱面图');

subplot(3,4,7);sphere

axis equal;title('三维球体');

x1 = [1 3 0.5 2.5 2];

explode = [0 1 0 0 0];

subplot(3,4,8);pie3(x1,explode)

title('三维饼图');axis equal;

X2 = [0 1 1 2;1 1 2 2;0 0 1 1];

Y2 = [1 1 1 1;1 0 1 0;0 0 0 0];

Z2 = [1 1 1 1;1 0 1 0;0 0 0 0];

C = [0.5000 1.0000 1.0000 0.5000;

     1.0000 0.5000 0.5000 0.1667;

     0.3330 0.3330 0.5000 0.5000];

subplot(3,4,9);fill3(X2,Y2,Z2,C);

colormap hsv

title('三维填充图');axis equal;

[x2,y2] = meshgrid(-3:.5:3,-3:.1:3);

z2 = peaks(x2,y2);

subplot(3,4,10);ribbon(y2,z2)

colormap hsv

title('三维彩带图');axis equal;

[X3,Y3] = meshgrid(-2:0.25:2,-1:0.2:1);

Z3 = X3 .* exp(-X3.^2 - Y3.^2);

[U,V,W] = surfnorm(X3,Y3,Z3);

subplot(3,4,11);quiver3(X3,Y3,Z3,U,V,W,0.5);

hold on 

surf(X3,Y3,Z3);

colormap hsv

view(-35,45);

title('三维向量场图');axis equal;

set(gcf,'Color','w');


[x y z v] = flow;

h = contourslice(x,y,z,v,[1:9],[],[0],linspace(-8,2,10));

subplot(3,4,12);

axis([0,10,-3,3,-3,3]);daspect([1,1,1])

camva(24);

camproj perspective;

campos([-3,-15,5])

set(gcf,'Color',[.5,.5,.5],'Renderer','zbuffer')

%set(gca,'Color','black','XColor','white','YColor','white','Zcolor','white')

box on

  • 11
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陌上花开缓缓归以

你的鼓励将是我创作的最大动力,

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值