zoukankan      html  css  js  c++  java
  • Matlab 画图1

    plot函数

    plot最简单的是plot(x,y),其中,x,y是一组数据

    如果要画出(y=x^2)的图像

    在Command Window中输入

    x =[1 2 3];
    y =[4 5 6];
    plot(x, y)
    

    回车后弹出一个窗口Figure1,显示着一条直线。这条线实际画时,是先确定(1,4)(2,4)(3,6)这三个关键点,再用直线段把相邻两点连接起来。

    但这个图像很粗糙,显然需要点跟多

    x=1:0.1:3; % 1 1.1 1.2 ......... 3
    y=x.*x;% ......
    plot(x,y)
    

    例题 在区间0<=x<=2*pi内,绘制正弦曲线y=sin(x)

    其程序为:

    x=0:pi/100:2*pi;
    y=sin(x);
    plot(x,y)
    

    plot函数还可以为plot(x,y1,x,y2,x,y3,…)形式,其功能是以公共向量x为X轴,分别以y1,y2,y3,…为Y轴,在同一幅图内绘制出多条曲线。

    图形标记

    在绘制图形的同时,可以对图形加上一些说明,如图形名称、图形某一部分的含义、坐标说明等,将这些操作称为添加图形标记。

    title('加图形标题');   
    xlabel('加X轴标记');   
    ylabel('加Y轴标记');    
    

    给图形加图例命令为legend。该命令把图例放置在图形空白处,用户还可以通过鼠标移动图例,将其放到希望的位置。

    格式:legend('图例说明‘,'图例说明')

    例题 为正弦、余弦曲线增加图例,其程序为:

    x=0:pi/100:2*pi;
    y1=sin(x);
    y2=cos(x);
    plot(x,y1,x,y2, '--');
    legend('sin(x)','cos(x)');
    

    设定坐标轴

    用户若对坐标系统不满意,可利用axis命令对其重新设定。

    axis([xmin xmax ymin ymax]) %设定最大和最小值
    axis (’auto’) %将坐标系统返回到自动缺省状态
    axis (’square’)   %将当前图形设置为方形
    axis (’equal’)    %两个坐标因子设成相等
    axis (’off’)      %关闭坐标系统
    axis (’on’)       %显示坐标系统
    

    subplot 函数

    定义:subplot(m,n,p)

    该命令将当前图形窗口分成m×n个绘图区,即每行n个,共m行,区号按行优先编号,且选定第p个区为当前活动区

    在一个图形窗口中同时绘制正弦、余弦、正切、余切曲线。

    x=linspace(0,2*pi,60);
    y=sin(x);
    z=cos(x);
    t=sin(x)./(cos(x)+eps); %eps为系统内部常数
    ct=cos(x)./(sin(x)+eps);
    subplot(2,2,1); %分成2×2区域且指定1号为活动区
    plot(x,y);
    title('sin(x)');                 
    axis ([0 2*pi -1 1]);            
    subplot(2,2,2);
    plot(x,z);
    title('cos(x)');
    axis ([0 2*pi -1 1]);
    subplot(2,2,3);
    plot(x,t);
    title('tangent(x)');
    axis ([0 2*pi -40 40]);
    subplot(2,2,4);
    plot(x,ct);
    title('cotangent(x)');
    axis ([0 2*pi -40 40]);
    

    subplot(2,2,[3,4])

    可以把图形显示到第三和第四个区域中

    figure 命令

    需要建立多个图形窗口,绘制并保持每一个窗口的图形,可以使用figure命令。

    每执行一次figure命令,就创建一个新的图形窗口,该窗口自动为活动窗口,若需要还可以返回该窗口的识别号码,称该号码为句柄。句柄显示在图形窗口的标题栏中,即图形窗口标题。用户可通过句柄激活或关闭某图形窗口,而axis、xlabel、title等许多命令也只对活动窗口有效。

    重新绘制上例4个图形,程序变变为:

    x=linspace(0,2*pi,60);
    y=sin(x);
    z=cos(x);
    t=sin(x)./(cos(x)+eps);   
    ct=cos(x)./(sin(x)+eps);
    H1=figure; %创建新窗口并返回句柄到变量H1
    plot(x,y); %绘制图形并设置有关属性
    title('sin(x)');           
    axis ([0 2*pi -1 1]);     
    H2=figure; %创建第二个窗口并返回句柄到变量H2
    plot(x,z); %绘制图形并设置有关属性
    title('cos(x)');
    axis ([0 2*pi -1 1]);
    H3=figure; %同上
    plot(x,t);
    title('tangent(x)');
    axis ([0 2*pi -40 40]);
    H4=figure; %同上
    plot(x,ct);
    title('cotangent(x)');
    axis ([0 2*pi -40 40]);
    

    hold命令

    若在已存在图形窗口中用plot命令继续添加新的图形内容,可使用图形保持命令hold。发出命令hold on后,再执行plot命令,在保持原有图形或曲线的基础上,添加新绘制的图形。

    阅读如下程序:
    x=linspace(0,2*pi,60);
    y=sin(x);
    z=cos(x);
    plot(x,y,'b');        %绘制正弦曲线
    hold on;            %设置图形保持状态
    plot(x,z,'g');        %保持正弦曲线同时绘制余弦曲线
    axis ([0 2*pi -1 1]);     
    legend('cos','sin');
    hold off             %关闭图形保持
    
  • 相关阅读:
    codeforces 814B An express train to reveries
    codeforces 814A An abandoned sentiment from past
    codeforces 785D D. Anton and School
    codeforces 785C Anton and Fairy Tale
    codeforces 791C Bear and Different Names
    AOP详解
    Spring集成JUnit测试
    Spring整合web开发
    IOC装配Bean(注解方式)
    IOC装配Bean(XML方式)
  • 原文地址:https://www.cnblogs.com/hunxuewangzi/p/14006113.html
Copyright © 2011-2022 走看看