本章将继承探讨MATLAB的画图和图形函数成果。下面将会接头 -

  • 绘制条形图
  • 绘制表面
  • 三维图
  • 绘制条形图

    bar呼吁绘制二维条形图,下面举个例子来演示如何利用。

    示例

    假设有10名学生,这些学生某次测验得到分数是:75,58,90,87,50,85,92,75,60和95,利用这此分数来绘制条形图如下。

    建设剧本文件并键入以下代码 -

    x = [1:10];
    y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
    bar(x,y), xlabel('Student'),ylabel('Score'),
    title('First Sem:')
    print -deps graph.eps
    

    运行文件时,MATLAB显示以下条形图 -

    Matlab图形

    绘制等高线

    两个变量的函数的表面线是一个曲线,函数有一个恒定值。等高线用于通过毗连便是高于某一程度的点(如平均海平面)来建设表面图。

    MATLAB提供了绘制表面图的contour函数。

    示例

    下面演示如何生成一个表面图,显示给定函数g = f(x,y)的表面线。该函数有两个变量。 所以,必需生成两个独立的变量,即两个数据集xy。 这可以通过挪用meshgrid呼吁完成。

    meshgrid呼吁用于生成在每种环境下给出xy范畴以及增量类型的元素矩阵。

    绘制函数g = f(x,y),个中-5≤x≤5-3≤y≤3。对付这两个值,递增0.1。变量配置为 -

    [x,y] = meshgrid(–5:0.1:5, –3:0.1:3);
    

    最后,需要分派这个函数。利用函数为:x^2 + y^2(注:xy的平方之和)
    建设剧本文件并键入以下代码 -

    [x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %independent variables
    g = x.^2 + y.^2;                     % our function
    contour(x,y,g)                       % call the contour function
    print -deps graph.eps
    

    执行上面示例代码,获得以下功效 -

    Matlab图形

    下面再修改一下代码,使舆图上变得有数据标识 -

    [x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %independent variables
    g = x.^2 + y.^2;                     % our function
    [C, h] = contour(x,y,g);             % call the contour function
    set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2)
    print -deps graph.eps
    

    执行上面示例代码,获得以下功效 -

    Matlab图形

    三维图

    三维图根基上显示的是由两个变量g = f(x,y)中的函数界说的外貌。

    像之前一样,要界说g,首先利用meshgrid呼吁在函数的域上建设一组(x,y)点。 接下来,分派函数自己。 最后,利用surf呼吁建设一个曲面图。

    以下示例演示了这一观念 -

    示例

    为以下函数建设一个3D曲面图 -

    Matlab图形

    建设剧本文件并键入以下代码 -

    [x,y] = meshgrid(-2:.2:2);
    g = x .* exp(-x.^2 - y.^2);
    surf(x, y, g)
    print -deps graph.eps
    

    运行文件时,MATLAB显示以下三维图 -

    Matlab图形

    也可以利用mesh呼吁生成三维外貌。 可是,surf呼吁显示毗连线和外貌的颜色,而mesh呼吁建设一个线框外貌,带有毗连界说点的彩色线。


    Matlab教程

    2017-11-02


    本章将继承探讨MATLAB的画图和图形函数成果。下面将会接头 -绘制条形图绘制表面三维图绘制条形图bar呼吁绘制二维条形图,下面举个例子来演示如