• [数学建模(八)]使用MATLAB绘图


    目录

    1..二维图
      1.1 基本画图功能
      1.2 plot参数说明 :线条类型,点类型,颜色 
      1.3 坐标轴定标和图形说明
      1.4 子图 :subplot
      1.5 其他类型的二维图 :极坐标图,条形图,饼图,柱状图,双y轴图
      1.6 函数绘图 :fplot
    2.三维绘图
      2.1 三维线图 plot3()
      2.2 曲面图 mesh surf
      2.3 等高图  contour()
      2.4 伪色图 pcolor()

    1.二维图

    1.1 基本画图功能

     

    1.2 plot参数说明

     

    1.3 坐标轴定标和图形说明

     

    1.4 子图

    subplot(m,n,p) 把图形窗口分成m行n列,p对应第几个子图。

    例如subplot(2,2,1)

     

    例子:

    x=0:pi/20:2*pi;
    
    y1=sin(x);
    
    y2=cos(x);
    
    %第一个图形窗口
    
    figure(1)
    
    plot(x,y1,':*k',x,y2,'--*r');   %参数依次为:线条类型,点类型,颜色
    
    title('正弦与余弦')              %标题
    
    xlabel('x轴')                   %标注x轴
    
    ylabel('y轴')                   %标注y轴
    
    legend('y1=sinx','y2=cosx')     %标注函数线
    
    text(0.7853,0.7071,'交点')      %在某个点添加文本框
    
    grid on                         %添加栅格
    
    %第二个图形窗口
    
    figure(2)                       %重新打开一个空白图形窗口
    
    subplot(2,1,1)
    
    axis([0,pi,0,1])                %限制x,y轴的最大最小值,[xmin,xmax,ymin,ymax]
    
    plot(x,y1,'r','LineWidth',2)    %使线条扩大一定倍数
    
    legend('y1=sinx')
    
    subplot(2,1,2)                  %把图形窗口分成2行1列
    
    axis([0,pi,0,1])   
    
    plot(x,y2,'b','LineWidth',2)
    
    legend('y1=sinx')

    运行结果:

     

    1.5 其他类型的二维图

    (1)极坐标图: polar(theta,r)

    (2)对数图

     

    (3)条形图,柱状图和饼图

     

    柱状图:显示数据的分布情况。

    (4)双y轴图:适用于同个x区间,但y值相差较大的情况。

    例子:

    x=[1:5];
    
    figure(1)
    
    subplot(2,2,1)
    
    bar(x);   %垂直条形图
    
    subplot(2,2,2)
    
    barh(x);  %水平条形图
    
    subplot(2,2,3)
    
    bar3(x);  %三维条形图
    
    subplot(2,2,4)
    
    bar3h(x); %三维水平条形图
    
    figure(2)
    
    subplot(2,2,1)
    
    pie(x);   %饼图
    
    subplot(2,2,2)
    
    pie3(x);  %三维饼图
    
    subplot(2,2,3)
    
    x1=[1 2 4 6 2 2 5 3 4 5 6 2 7 1 2  8 9 2 3 4 6];
    
    hist(x1,10);  %柱状图,把数据从最大值到最小值等分成10份
    
    subplot(2,2,4)
    
    x2=0:pi/20:2*pi;
    
    y1=sin(x2);
    
    y2=exp(x2);
    
    plotyy(x2,y1,x2,y2)  %双y图

    运行结果:

     

    1.6 函数绘图:fplot('sin(x)',[-2*pi,2*pi])

    2.三维绘图

     

     2.1 三维线图

    x=linspace(0,10*pi,1000);  %0到10*pi中间插入1000个值
    
    y=cos(x);
    
    z=sin(x);
    
    plot3(x,y,z)
    
    grid
    
    xlabel('angle');
    
    ylabel('cos(x)');
    
    zlabel('sin(x)');
    
    title('弹簧')

    运行结果:

     

    2.2 曲面图

    (1)mesh图 (无颜色):mesh(x,y,z)

    (2)surf图 surf(x,y,z)

    渲染颜色:shading interp    去掉颜色:shading flat

    用户自定义颜色:colormap(gray)  %输出灰色

    其他颜色:

     

    例子:

    z=[1:10;2:2:20;3:12];
    
    x=linspace(1,50,10);
    
    y=[500,750,1000];
    
    subplot(2,2,1);
    
    mesh(x,y,z);     %mesh图
    
    title('mesh图')
    
    subplot(2,2,2);
    
    surf(x,y,z);     %surf图
    
    title('surf图')
    
    subplot(2,2,3);
    
    surf(x,y,z);   
    
    shading interp; %渲染阴影图
    
    title('渲染阴影图')
    
    subplot(2,2,4);
    
    surf(x,y,z);
    
    shading flat;   %去掉色图中的网格
    
    title('去掉色图中的网格')

    运行结果:

     

     

    2.3  等高图

    [x,y,z]=peaks;
    
    subplot(1,2,1);
    
    plot3(x,y,z);
    
    contour(x,y,z)   %绘制三维等高图
    
     subplot(1,2,2);
    
    surfc(x,y,z) %同时绘制等高图和曲面图

    运行结果:

     

     

    2.4 伪色图

    概念:用带栅格的二维阴影图代替等高图中的轮廓线。

    [x,y,z]=peaks;
    
    subplot(2,2,1);
    
    pcolor(x,y,z);
    
    title('绘制伪色图')
    
     
    
    subplot(2,2,2);
    
    pcolor(x,y,z);
    
    shading interp;
    
    title('去掉了三维图形的网格')
    
     
    
    subplot(2,2,3);
    
    pcolor(x,y,z);
    
    shading interp;
    
    hold on;
    
    contour(x,y,z,20,'k')
    
    title('在图形上叠加等高线')
    
     
    
    subplot(2,2,4);
    
    contour(x,y,z)
    
    title('普通的等高图')

    运行结果:

     

  • 相关阅读:
    java发送邮件
    MySQL查询表结构的SQL语句
    Jquery的toggle()方法
    jQuery为图片添加链接(创建新的元素来包裹选中的元素)
    mysql修改存储过程的权限
    php中接收参数,不论是来自GET还是POST方法
    解决php中文乱码
    MySQL的视图view,视图创建后,会随着表的改变而自动改变数据
    选项卡面向对象练习
    对数组的操作splice() 和slice() 用法和区别
  • 原文地址:https://www.cnblogs.com/youngsea/p/7505364.html
Copyright © 2020-2023  润新知