Matlab编程-图形处理功能

  绘图功能最基本的命令行:plot(y).

 

  二维图形:

(1)

>> y=rand(100,1);

>> plot(y)

y是随机的实向量,以生成y的索引为横坐标,y为纵坐标绘图

                       

 

(2)plot(x,y):

第一个作为横坐标,第二个变量作为纵坐标

>> x=0:0.01*pi:pi;

>> y=sin(x).*cos(x);

>> plot(x,y)

 

 

(3)同时生成多个函数的方法:

  >> x=0:0.01*pi:pi;

y=[sin(x'),cos(x')];

plot([x',x'],y);

 

 

这是用矩阵相乘的一种形式,同时生成多个函数图像下面还有一种写法。

 

  (4)plot(x,y,s)中的s参数

  >> x=0:0.1*pi:pi;

>> y=sin(x);

>> z=cos(x);

>> plot(x,y,'--k',x,z,'-.rd' )   % --k表示虚线黑色,-.rd表示点图红色


s参数一览表

    -  实线      .  点        *  星号        ^  上三角

   : 点线       o  圆      s  方形        <  左三角

   -.  点划线   x  x符号          d  菱形        >  右三角

   --  虚线           +  +号         v  下三角         p  正五边形

   y   黄色           m  紫红色        c  蓝绿色          r   红色

   g   绿色           b   蓝色           w  白色       k  黑色

 

    上述参数的不同组合可以为图形设置不同的线形、颜色和标识,调用时以单引号来引用,各选项直接相连,不需要分隔符。

 

(5)极坐标图:

>> x=1:0.01*pi:4*pi;

>> y=sin(x/2)+x;

>> polar(x,y,'-k')

 

 

 

 

(6)特殊的二维图形绘制:

  条形图:

 

 

 >> x=1:10;

>> y=rand(10,1);

>> bar(x,y)

 

 

  饼图:

  >> x=[2 4 6 8];

  >> pie(x)

 

  二维特殊函数一览表:

area           填充绘图          

fplot           函数图绘制

bar            条形图               

hist            直方图

barh           水平条形图      

pareto        Pareto图

comet        彗星图        

 pie           饼状图

errorbar     误差带图

plotmatrix 分散矩阵图

ezplot       简单绘制函数图   

 ribbon      三位图的二维条状显示

ezpolar      简单绘制极坐标图     

scatter      散射图

feather      矢量图   

stem         离散序列饼状图

fill             多边形填充       

stairs         阶梯图

 

 

  三维图像功能:

 

(1)    三维螺旋线:

>> x=0:pi/50:10*pi;

>> y=sin(x);

>> z=cos(x);

>> plot3(x,y,z);

                       

 

(2)    网格三维图像:

>> [x,y]=meshgrid(-3:0.1:3,-2:0.1:2);

z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);

plot3(x,y,z)

 

 

(3)    三维彩色网格图像

>> x=-8:0.5:8;

>> y=x';

>> a=ones(size(y))*x;

>> b=y*ones(size(x));

>> c=sqrt(a.^2+b.^2)+eps;

>> z=sin(c)./c;

>> mesh(z)

>> %注意这里 / 和 ./的区别 针对矩阵来说

>> %a/b表示矩阵a乘矩阵b的逆  a./b表示矩阵a和b对应的元素相除

 

 

  能绘制等高线的meshc函数  

>> [x,y]=meshgrid([-4:0.5:4]);

>> z=sqrt(x.^2+y.^2);

>> meshc(z)

 

 

  边界屏蔽的meshz函数:

  >> [x,y]=meshgrid([-4:0.5:4]);

  z=sqrt(x.^2+y.^2);

  >> meshz(z)

  

 

(4)    另外一个带色的三维带网格函数:surf(x,y,z)

>> [x,y]=meshgrid([-4:0.5:4]);

>> z=sqrt(x.^2+y.^2);

>> surf(x,y,z)

 

 

 

(5)    柱面图画法:

>> x=0:pi/20:3*pi;

>> r=5+cos(x);

>> [a,b,c]=cylinder(r,30);  %[x,y,z]=cylinder(R,N),r为旋转母线,N为旋转母线在旋转圆周%上分割的条数

>> mesh(a,b,c)

 

特殊三维图形一览表:

bar3    三维条形图

surfc    着色与等高线结合

comet3  三维彗星轨迹图    

trisurf  三角形表面图

ezgraph3  函数控制绘制三位图

trimesh 三角形网格图

pie3        三维饼状图    

waterfall  瀑布图

scatter3  三维散射图    

cylinder   柱面图

stem3     三维离散数据图    

sphere    球面图

 

posted on 2016-08-16 11:19  在苏州的城边  阅读(372)  评论(0编辑  收藏  举报

导航