matlb学习5

------------恢复内容开始------------

matlab绘图

二维曲线

plot函数

调用格式1:plot(x,y)

其中,x和y分别用于存储x坐标和y坐标数据

image-20210918152649795

image-20210918152707820

调用格式2:plot(x)

结果为;

image-20210918152821056

当plot函数的参数x是复数向量时,则分别以该向量元素实部和虚部为横纵坐标绘制出一条曲线,

 

linspace函数 猪:产生的是向量

matlab中的linspace可以用于产生x1,x2之间的N点行线性的矢量,linspace(x1,x2,N)。

linspace是Matlab中的均分计算指令,

 

含有多个输入参数的plot函数

image-20210918155346905

image-20210918155400485

含选项的plot函数

plot(x,y,选项)

线型:

         1. "-"  :实线                         
  2. ":"     :虚线
  3. "-."     :点画线
  4. "--"     :双划线

颜色:

 1. "r"  :红色
 2. "g" :绿色
 3. "b" :蓝色
 4. "w" :白色
 5. "k" :黑色

数据点标记:

 1. "*"  :星号
 2. "o" :圆圈
 3. "s" :方块
 4. "p" :五角星
 5. "^" :朝上三角符号

fplot函数

调用方式1: fplot(funx,tlims,选项)

funx:代表函数,用函数句柄的形式

tlims:为funx中自变量的取值范围,用二元向量[tmin,tmax]描述

image-20210918163540029

结果为:(绘制sin(1/x)在0附近的图像) 猪:是点除不是单纯的除法

image-20210918163552045

调用方式2:(双输入函数参数的用法)

fplot(funx,funy,tlims,选项)

image-20210918164331766

猪:由于是矩阵,所以用的是点乘

绘制x=tsin(t) y=tcos(t)图像 结果为:image-20210918164432725

绘制图形的辅助操作

图形标注

title :图形标题

xlabel :x轴说明

ylabely :y轴说明

text :(x,y图形说明)

legend (图例1,图例2,~~~)

  1. title函数

    title(图形标题);当标题要占多行时,用{}括起来中间用逗号分隔,

    title(图形标题,属性名,属性值)

    Color属性

    FontSize属性

    猪:都是以字符串形式出现,字号是数字

  2. xlabel和ylabel

     >> x=-2*pi:0.02:2*pi;
     >> y=sin(x);
     >> plot(x,y)
     >> title('y=sin(x)')
     >> title({'Matlb','y=sin(x)'})
     >> xlabel('-2\pi\leqx\leq2\pi')         //leq用于输出小于符号

image-20210919091503628

  1. text函数和gtext函数

    text(x,y,说明)

    text(-2*pi,0,'-2\pi')

    image-20210919092006740

    text(3,0.28,'\leftarrow sin(x)') //leftarrow用于生成左箭头

    image-20210919092123885

    gtext(说明):自己定义你要放的位置

  2. legend函数

    legend(图例1,图例2,~~~)

    image-20210919093059784

结果为:

image-20210919093115928

坐标控制

  1. axis函数

    格式:axis([xmin,xmax,ymin,ymax,zmin,zmax])

    其他用法:

         1. axis equal:横纵坐标采用等长刻度
      2. axis square:产生正方形坐标系(默认为矩形)
      3. axis auto:使用默认设置
      4. axis off:取消坐标轴
      5. axis on:显示坐标轴
  2. 给坐标轴加网格和边框(若没有函数,不显示网格线,但是显示边框)

    grid on:显示网格线

    grid off:不显示网格线

    grid:两者之间切换

     

    box on:

    box off:

    box :

  3. 图形保持

    hold on

    hold off

    hold

  4. 图形窗口的分割

    子图:同一图形窗口中的不同坐标系下的图形称为子图

    subplot函数

    subplot(m,n,p)

    m和n指定图形窗口分成m*n的绘图区,p指定当前活动区

 

其他形式的二维图形

  1. 对数坐标图

    semilogx(x1,y1,选项1,x2,y2,选项2~~~) x轴使用对数刻度,y轴使用线性刻度

    semilogy(x1,y1,选项1,x2,y2,选项2~~~)

    loglog(x1,y1,选项1,x2,y2,选项2~~~)

  2. 极坐标图

    polar(theta,rho,选项)

    thrta:极角

    rho:极径

    选项:与plot函数相同

  3. 统计图

    1. 条形图

      bar函数(绘制竖直条形图)

      barh函数(绘制水平条形图)

       //绘制分组条形图
       y=[1,2,3,4,5;1,2,1,2,1;5,4,3,2,1];
       subplot(1,2,1);
       bar(y)
       title('Group')
       subplot(1,2,2)
       bar(y,'stacked')       //stacked表示以堆积分组绘图
       title('Stack')
    2. 直方图

      hist函数(直角坐标系下的)

      rose函数(极坐标系下的)

       //绘制服从高斯分布的直方图
       y=randn(500,1);     //产生方差是1的一个500*1的数组
       subplot(2,2,1);
       hist(y);
       title('高斯分布直方图');
       subplot(2,1,2);
       x=-3:0.2:3;
       hist(y,x);
       title('指定区间中心点的直方图');
    3. 面积类统计图

      1. 扇形图

        1. pie函数

      2. 面积图

        1. area函数

    4. 散点类图形

      1. scatter函数:散点图

      2. stairs函数:阶梯图

      3. stem函数和:杆图

    5. 矢量类图形

      1. compass函数:罗盘图

      2. feather函数:羽毛图

      3. quiver函数:箭头图

        quiver(x,y,u,v)

        其中(x,y)指定矢量的起点,(u,v)指定矢量的终

 

三维曲线绘制

plot3函数

plot3(x,y,z)

其中,参数x,y,z组成一组曲线的坐标

  1. 含多组输入参数的plot3参数

plot3(x1,y1,z1,x2,y2,z2,x3,y3,z3,~~~,xn,yn,zn,)

每一组x,y,z向量构成一组数据点的坐标,绘制一跳曲线。

  1. 含选项的plot3函数

    plot3(x,y,z,选项)选项引用指定曲线的线型、颜色和数据点标记

fplot3函数

fplot3(funx,funy,funz,tlims)

其中,funx、funy、funz代表定义曲线x,y,z坐标的函数,通常采用函数句柄的形式,tlims为参数函数自变量的取值范围,用二元向量[tmin,tmax]描述,默认[-5,5]

在参数tlims后可以加入参数指定曲线的线型、颜色、和数据点标记

三维曲面

平面网格数据的生成

 x=2:6;
 y=(3:8)';
 X=ones(size(y))*x;
 Y=y*ones(size(x));

以上的X和Y矩阵可有函数meshgrid生成

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

参数x,y为向量,存储网络个点坐标的X,Y为矩阵

mesh(x,y,z,c) :绘制三维网格图

surf(x,y,z,c) :绘制三维曲面图

其中x,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的曲面颜色。

c省略时,c=z。

 

当x、y省略时,z矩阵的第2维下标当做x轴坐标,z矩阵的第1维下标当做y轴坐标,

带等高线的三维网格曲面函数meshc

带底座的三维网格曲面函数meshz

具有等高线的曲面函数surfc

具有光照效果的曲面函数surfl

[x,y]=meshgrid(0:0.1:2,1:0.1:3);
z=(x-1).^2+(y-2).^2-1;
subplot(2,2,1);
meshc(x,y,z);title('meshc(x,y,z)');
subplot(2,2,2);
meshz(x,y,z);title('meshz(x,y,z)');
subplot(2,2,3);
surfc(x,y,z);title('surfc(x,y,z)');
subplot(2,2,4);
surfl(x,y,z);title('surfl(x,y,z)');

效果图:

image-20210919164149135

 

标准三维曲面

  1. sphere函数

    [x,y,z]=sphere(n)

  2. cylinder函数

    [x,y,z]=cylinder(R,n)

------------恢复内容结束------------

posted @ 2021-09-19 20:42  史春生  阅读(268)  评论(0)    收藏  举报