用legend函数生成图例。该函数的语法格式为:[大谦MATLAB,dqmatlab点com]
legend 为每个绘制的数据序列创建一个带有描述性标签的图例。对于标签,图例使用数据序列的DisplayName属性中的文本。如果DisplayName属性为空,则图例使用'dataN'形式的标签。当您在坐标区上添加或删除数据序列时,图例会自动更新。此命令为gca返回的当前坐标区或图形创建图例。如果当前坐标区为空,则图例为空。如果坐标区不存在,此命令将创建坐标区。
legend(label1,...,labelN) 设置图例标签。以字符向量或字符串列表形式指定标签,例如legend('Jan','Feb','Mar')。
legend(labels) 使用字符向量元胞数组、字符串数组或字符矩阵设置标签,例如legend({'Jan','Feb','Mar'})。
legend(subset,___) 仅在图例中包括subset中列出的数据序列的项。subset以图形对象向量的形式指定。您可以在指定标签之前或不指定其他输入参数的情况下指定subset。
legend(target,___) 使用target指定的坐标区、极坐标区或图形,而不是使用当前坐标区或图形。指定target作为第一个输入参数。
legend(___,'Location',lcn) 设置图例位置。例如,'Location','northeast'将在坐标区的右上角放置图例。请在其他输入参数之后指定位置。
legend(___,'Orientation',ornt)(其中ornt为'horizontal')并排显示图例项。ornt的默认值为'vertical',即垂直堆叠图例项。
legend(___,Name,Value) 使用一个或多个名称-值对组参数来设置图例属性。设置属性时,必须使用元胞数组指定标签,例如legend({'A','B'},'FontSize',12)。如果您不想指定标签,请包含一个空元胞数组,例如legend({},'FontSize',12)。
legend(bkgd)(其中bkgd为'boxoff')删除图例背景和轮廓。bkgd的默认值为'boxon',即显示图例背景和轮廓。
lgd=legend(___) 返回Legend对象。可使用lgd在创建图例后查询和设置图例属性。
[lgd,icons,plots,txt]=legend(___) 还返回用于创建图例图标的对象、在图形中绘制的对象以及标签文本数组。不建议使用该语法。它创建的图例不支持某些功能,例如添加图例标题。此外,当您在坐标区上添加或删除数据序列时,图例不会自动更新。请改用 lgd=legend(__) 语法,以返回Legend对象并设置Legend属性。
legend(vsbl) 控制图例的可见性,其中vsbl为'hide'、'show' 或'toggle'。
legend('off') 删除图例。
上面语法格式中,图例的位置用Location属性确定,该属性的取值如表2-4所示。
表2-4 图例的位置
| 值 | 说 明 | 值 | 说 明 |
|---|---|---|---|
| 'north' | 坐标绘图区内的顶部 | 'eastoutside' | 坐标绘图区的右侧 |
| 'south' | 坐标绘图区内的底部 | 'westoutside' | 坐标绘图区的左侧 |
| 'east' | 坐标绘图区内的右侧 | 'northeastoutside' | 坐标绘图区外的右上角 |
| 'west' | 坐标绘图区内的左侧 | 'northwestoutside' | 坐标绘图区外的左上角 |
| 'northeast' | 坐标绘图区内的右上角 | 'southeastoutside' | 坐标绘图区外的右下角 |
| 'northwest' | 坐标绘图区内的左上角 | 'southwestoutside' | 坐标绘图区外的左下角 |
| 'southeast' | 坐标绘图区内的右下角 | 'best' | 坐标绘图区与数据冲突最少的地方 |
| 'southwest' | 坐标绘图区内的左下角 | 'bestoutside' | 到坐标绘图区外的右侧 |
| 'northoutside' | 坐标绘图区的上方 | 'none' | 由Position属性决定位置 |
| 'southoutside' | 坐标绘图区的下方 |
下面在当前坐标系中绘正弦曲线和余弦曲线,添加图例。
>> x=linspace(0,2*pi,50);
>> y1=sin(x);
>> plot(x,y1,'DisplayName','sin(x)','LineWidth',2)
>> hold on
>> y2=cos(x);
>> plot(x,y2,'DisplayName','cos(x)', 'LineWidth',2)
>> hold off
>> legend({'sin(x)','cos(x)'},'FontSize',12,'TextColor','blue')
生成图2-29。
图2-29 添加图例