• matlab的legend用法


    用Matlab画图时,有时候需要对各种图标进行标注,例如,用“+”代表A的运动情况,“*”代表B的运动情况。

    legend函数的基本用法是:

    LEGEND(string1,string2,string3, ...)

    分别将字符串1、字符串2、字符串3……标注到图中,每个字符串对应的图标为画图时的图标。

    例如:

    plot(x,sin(x),'.b',x,cos(x),'+r')

    legend('sin','cos')这样可以把"."标识为'sin',把"+"标识为"cos"

    还可以用LEGEND(...,'Location',LOC) 来指定图例标识框的位置

    这些是Matlab help文件。后面一段是对应的翻译和说明

            'North'              inside plot box near top
            'South'              inside bottom
            'East'               inside right
            'West'               inside left
            'NorthEast'          inside top right (default)
            'NorthWest      

    ...

    matlab绘图中legend的终极用法

     

    高级用法1:指定legend显示的位置:

    legend({'str1','str2','strn'},1);

    legend({'str1','str2','strn'},2);

    legend({'str1','str2','strn'},'Location','SouthEast');

    高级用法2:指定显示某几条曲线的legend

    方法1:

    例如你有25条曲线,想显示其中1,6,11,16,21的legend,则

    for i = [2:5 7:10 12:15 17:20 22:25]
         set(get(get(H(i),'Annotation'),'LegendInformation'),'IconDisplayStyle','off');
    end
    legend('1','6','11','16','21');

    方法2:

     H = plot(data);
    legend(H([1 6 11 16 21],'1,'6','11’,'16','21');

    高级用法3:legend横排

    hl = legend(H([1 6 11 16 21],'1,'6','11’,'16','21');
    set(hl,'Orientation','horizon')

    高级用法4:不显示方框:

    hl = legend(H([1 6 11 16 21],'1,'6','11’,'16','21');
    set(hl,'Box','off');

    matlablegend函数在添加图例时的使用方法

    功能 :

    在图形上添加图例。该命令对有多种图形对象类型(线条图,条形图,饼形图等)的窗口中显示一个图例。对于每一线条,图例会在用户给定的文字标签旁显示线条的线型,标记符号和颜色等。当所画的是区域(patch或surface对象)时,图例会在文字旁显示表面颜色。Matlab在一个坐标轴中仅仅显示一个图例。图例的位置有几个因素决定,像遮挡的对象等,用户可以用鼠标拖动图例到恰当的位置,双击标签可以进入标签编辑状态。 

    用法:

    legend('string1','string2',…) 用指定的文字string在当前坐标轴中对所给数据的每一部分显示一个图例。 

    legend(h,'string1','string2',…) 用指定的文字string在一个包含于句柄向量h中的图形显示图例。用给定的数据对相应的图形对象加上图例。 

    legend(string_matrix) 用字符矩阵参量string_matrix的每一行字符串作为标签。 

    legend(h,string_matrix) 用字符矩阵参量string_matrix的每一行字符串作为标签给包含于句柄向量h中的相应的图形对象加标签。 

    legend(axes_handle,…) 给由句柄axes_handle指定的坐标轴显示图例。

     legend('off') 从当前的坐标轴,或是由axes-handle指定的坐标轴中除掉图例。

     legend(axes_handle,'off') 从由axes_handle指定的坐标轴中除掉图例。legend_handle = legend 返回当前坐标轴中的图例句柄,若坐标轴中没有图例存在,则返回空        向量。 

    legend 对当前图形中所有的图例进行刷新。 

    legend(legend_handle) 对由句柄legend_handle指定的图例进行刷新。

    当在一个坐标系上画多幅图形时,为区分各个图形,Matlab提供了图例的注释说明函数。其格式如下:  

        legend(字符串1,字符串2,字符串3,…,参数)  

          参数字符串的含义如下表所示:  

      参数字符串                                      含  义  

    0                              尽量不与数据冲突,自动放置在最佳位置  

    1                                                          放置在图形的右上角 

    2                                                          放置在图形的左上角    

    3                                                          放置在图形的左下角

    4                                                          放置在图形的右下角    

    -1                              放置在图形视窗的外右边    

          此函数在图中开启了一个注释视窗,依据绘图的先后顺序,依据输出字符串对各个图形进行注释说明。如字符串1表示第一个出现的线条,字符串2表示第二个出现的线条,参数字符串确定注释视窗在图形中的位置。同时,注释视窗也可以用鼠标拖动,以便将其放置在一个合适的位置。 

    【 例 】在同一坐标内,绘出两条函数曲线并有图解注释。

    >>x=0:0.2:12; 

          >>plot(x,sin(x),‘-’,x,1.5*cos(x),‘:’) 

          legend(‘First’,‘Second’,-1);    %强行将注释视窗放在图形视窗的外右边。 

    程序运行的结果如图所示:

  • 相关阅读:
    CentOS6.5 安装 tomcat
    CentOS6.5 安装 jdk1.7
    CentOS6.5 mysql 5.5安装
    java使用split切割字符串的时候,注意转义字符
    hibernate中设置BigDeCimal的精度
    powerdesinger中建立一个表后,出现Existence of index的警告
    MySQL数据库一个字段对应多个值得模糊查询
    系统收到了多个不同的 Content-Disposition 标头。为了避免遭到 HTTP 响应拆分攻击,这种情况是不允许的。
    下载的文件名字当前时间(精确到秒)+ 随机数
    简单的poi导出excel文件
  • 原文地址:https://www.cnblogs.com/lihuidashen/p/3443526.html
Copyright © 2020-2023  润新知