【问题标题】:Legend in multiple plots Matlab多个图中的图例 Matlab
【发布时间】:2017-06-10 00:51:57
【问题描述】:

如何像(图 2)那样将图例分别放在每个图表上,而不是像(图 1)那样将图例放在一边?

图一

图2

【问题讨论】:

    标签: matlab plot legend figure


    【解决方案1】:

    可能最简单的方法是使用text(x,y,textstring) 函数在每条曲线的最终数据点处放置一些文本(例如,对于每条曲线,x,最大 x 的 y 点)。参数 x、y 可以是向量,参数 textstring 可以是字符串元胞数组。

    分别为 x 和 y 创建一个最终数据点数组。

    xcoords = [x0_final x1_final ...xn_final];
    
    ycoords = [y0_final y1_final ...ym_final];
    

    创建一个元胞数组,其中包含与 xcoord 和 ycoord 数组长度相同的图例字符串

    legend_strings = {'T0 = 0.5', 'T0 = 0.7' ...};
    

    然后在你的情节之后调用text(xcoords,ycoords,legend_strings) 应该做你想要的标签。

    【讨论】:

    • @Reza,如果这个答案对您有帮助 - 接受它,如果没有,请解释原因,因为这是最好的方法。
    【解决方案2】:

    对每一行进行评论的最佳方式是添加标签或文本而不是图例。

    例如: 1)

    labeledge(h,s,t,'T_0=1.5s')

    2)

     txt = texlabel('T_0=1.5s')
     text=text(1,1.00E-04,txt)
    

    【讨论】:

    • labeledge 在这里无关紧要,因为这不是图形对象,只是一个简单的绘图。另外,不需要texlabel,这可以通过简单的text来完成,
    猜你喜欢
    • 2012-01-05
    • 2019-05-15
    • 2014-04-01
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-08
    相关资源
    最近更新 更多