• Matlab中二维统计分析图和三维立体图


    1.

      在MATLAB中,二维统计分析图形很多,常见的有条形图、阶梯图、杆图和填充图等,所采用的函数分别是:
    bar(x,y,选项)
    stairs(x,y,选项)
    stem(x,y,选项)
    fill(x1,y1,选项1,x2,y2,选项2,…)。

    例  分别以条形图、阶梯图、杆图和填充图形式绘制曲线y=2sin(x)。
    程序如下:

     1 x=0:pi/10:2*pi;
     2 y=2*sin(x);
     3 subplot(2,2,1);bar(x,y,'g'); %subplot最后一个1表示正在绘制第一个图像
     4 title('bar(x,y,''g'')');axis([0,7,-2,2]);
     5 subplot(2,2,2);stairs(x,y,'b');
     6 title('stairs(x,y,''b'')');axis([0,7,-2,2]);
     7 subplot(2,2,3);stem(x,y,'k');
     8 title('stem(x,y,''k'')');axis([0,7,-2,2]);
     9 subplot(2,2,4);fill(x,y,'y');
    10 title('fill(x,y,''y'')');axis([0,7,-2,2]);

    2.MATLAB提供的统计分析绘图函数还有很多,例如,用来表示各元素占总和的百分比的饼图、复数的相量图等等。

    例   绘制图形:
    (1) 某企业全年各季度的产值(单位:万元)分别为:2347,1827,2043,3025,试用饼图作统计分析。
    (2) 绘制复数的相量图:7+2.9i、2-3i和-1.5-6i。

     1 subplot(1,2,1);
     2 pie([2347,1827,2043,3025]);
     3 title('饼图');
     4 legend('一季度','二季度','三季度','四季度'); %LEGEND
     5 %(string1,string2,string3, ...)
     6 %分别将字符串1、字符串2、字符串3……标注到图中,每个字符串对应%的图标为画图时的图标。
     7 subplot(1,2,2);
     8 compass([7+2.9i,2-3i,-1.5-6i]); %函数功能:在一个圆形带网格
     9 %区域内,使用带箭头的线条绘制从原点出发的若干向量。绘制出来
    10 %效果图就像一个罗盘。
    11 title('相量图');

    3.隐函数绘图

    MATLAB提供了一个ezplot函数绘制隐函数图形,下面介绍其用法。
    (1) 对于函数f = f(x),ezplot函数的调用格式为:
      ezplot(f):在默认区间-2π<x<2π绘制f = f(x)的图形。
      ezplot(f, [a,b]):在区间a<x<b绘制f = f(x)的图形。

    (2) 对于隐函数f = f(x,y),ezplot函数的调用格式为:
      ezplot(f):在默认区间-2π<x<2π和-2π<y<2π绘制f(x,y) = 0的图形。
      ezplot(f, [xmin,xmax,ymin,ymax]):在区间xmin<x<xmax和ymin<y<ymax绘制f(x,y) = 0的图形。
      ezplot(f, [a,b]):在区间a<x<b和a<y< b绘制f(x,y) = 0的图形。

    (3) 对于参数方程x = x(t)和y = y(t),ezplot函数的调用格式为:
      ezplot(x,y):在默认区间0<t<2π绘制x=x(t)和y=y(t)的图形。
      ezplot(x,y, [tmin,tmax]):在区间tmin < t < tmax绘制x=x(t)和y=y(t)的图形。

    例  隐函数绘图应用举例。

    1 subplot(2,2,1);
    2 ezplot('x^2+y^2-9');axis equal
    3 subplot(2,2,2);
    4 ezplot('x^3+y^3-5*x*y+1/5')
    5 subplot(2,2,3);
    6 ezplot('cos(tan(pi*x))',[ 0,1])
    7 subplot(2,2,4);
    8 ezplot('8*cos(t)','4*sqrt(2)*sin(t)',[0,2*pi])

    4.三维曲线

      plot3函数与plot函数用法十分相似,其调用格式为:
    plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n)
    其中每一组x,y,z组成一组曲线的坐标参数,选项的定义和plot函数相同。当x,y,z是同维向量时,则x,y,z 对应元素构成一条三维曲线。当x,y,z是同维矩阵时,则以x,y,z对应列元素绘制三维曲线,曲线条数等于矩阵列数。

    例   绘制三维曲线。

    1 t=0:pi/100:20*pi;
    2 x=sin(t);
    3 y=cos(t);
    4 z=t.*sin(t).*cos(t);
    5 plot3(x,y,z);
    6 title('Line in 3-D Space');
    7 xlabel('X');ylabel('Y');zlabel('Z');
    8 grid on;

    5.绘制多峰函数的瀑布图和等高线图。

    1 subplot(1,2,1);
    2 [X,Y,Z]=peaks(30); %可产生一个凹凸有致的曲面
    3 waterfall(X,Y,Z)
    4 xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis');
    5 subplot(1,2,2);
    6 contour3(X,Y,Z,12,'k');     %其中12代表高度的等级数
    7 xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis');

    三度空间的立体图:http://cs.nju.edu.cn/yangxc/dcc2003.files/matlab1/matlabsimple/index-1.htm

    求问读者:我的matlab10版里绘制不出三维曲面图(不是三维立体),现实的图像只是空白或者一条粗杠,就更别说后面的视图和动画演示了,这是显卡问题吗?求解

  • 相关阅读:
    http协议及工作原理
    前端中的安全问题
    JS中的splice slice concat关于字符串,数组的处理
    git stash缓存
    Node学习心得
    uni-app中的TypeError: Cannot read property 'name' of undefined
    js 中Object.keys()返回string类型的索引
    JS中sort()方法,用于排序
    JS中JSON传值
    JS encodeURI()
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2787307.html
Copyright © 2020-2023  润新知