我如何跳过图例中的项目?

8919视图(过去30天)
王亨利
王亨利 2011年1月25日
评论道: 吉姆·托蒂2021年4月17日
我如何跳过传奇中的项目?假设我有6个带有3个实际值和3条插值曲线的图。我只想标记实际的值曲线
传奇(“第一”''“第二”''“第三”
实际上不起作用,因为插值曲线仍然显示。
5个评论
丹尼尔裴瑞兹
丹尼尔裴瑞兹 2021年4月6日
@FTil 我一直在寻找这个,非常感谢!这里发布的最简单的解决方案。

登录以发表评论。

公认的答案

肯尼斯·伊顿
肯尼斯·伊顿 2011年1月25日
编辑:MathWorks支金宝app持团队 2021年3月16日
从R2021a开始,你可以离开了 通过将相应标签设置为空,从图例中删除项目 字符向量。
例如,画三条线。然后调用legend函数 并指定第二个图例标签为空字符向量。 图例中省略了相应的行。
情节(兰德(3));
传奇(“第1行”''“第3行”
注意,当您指定时,此策略有效 只是 标签, 当您指定一组对象时,则不是 包括在传说中
5个评论
托马沙巴
托马沙巴 2021年3月24日
@刘郑 精彩的回答,
谢谢你!

登录以发表评论。

更多答案(9)

沃尔特·罗伯森
沃尔特·罗伯森 2011年1月25日
编辑:约翰·凯利 2015年2月26日
对于不希望为其添加图例的项目,可以将IconDisplayStyle设置为off。请参阅 本文件
4评论
努万·李亚纳格
努万·李亚纳格 2020年8月25日
这真的很有帮助,谢谢!

登录以发表评论。


辛淑仪
辛淑仪 2019年3月21日
编辑:辛淑仪 2019年3月21日
我遇到了这个问题,我还没有看到这种方法的建议,但我解决它通过改变我的标线的顺序,影响图例显示(我使用MATLAB R2017b)。
假设您先绘制两条线,然后创建图例。然后绘制第三条线。第三条线将作为“数据1”添加到图例中。
绘制3条线,然后在图例中仅标记前2条线。图例中将省略第3条线。
希望这有帮助。
3评论
吉姆·托蒂
吉姆·托蒂 2021年4月17日
另一种避免获得自动图例更新(导致“数据1”,“数据2”等图例条目)的方法是由Phuc Bui在2021-03年对zoomPlot条目的评论中提出的: 凯尔西·鲍尔(2021年),《zoomPlot》
避免“data1”、“data2”的最简单方法是打开图例的autoupdate属性:
传奇({“A”“B”},“自动更新”“关”

登录以发表评论。


骑自行车的人
骑自行车的人 2011年1月25日
每个曲线都有一个句柄,可以从属性中获得。使用带两个参数(handle和legend)的legend形式,并且只使用要显示的曲线的句柄。

亚辛Zamani
亚辛Zamani 2019年9月25日
编辑:亚辛Zamani 2019年9月25日
例如,假设您想跳过图例中第一个情节的名称:
X = linspace(0,2 * pi);
%sin(x)
H = plot(x, sinx);
%下一行从图例中跳过上一个绘图的名称
h.Annotation.LegendInformation.IconDisplayStyle =“关”
% cos (x)
情节(x), cos (x));
%的传说
传奇(“因为”);
1评论
朱里奥Suzumura
朱里奥Suzumura 2020年10月17日
谢谢大家。当使用“hold on”和外部功能时的最佳方法。

登录以发表评论。


迪尔沙德雷汉
迪尔沙德雷汉 2015年10月26日
编辑:迪尔沙德雷汉 2015年10月26日
您可以先按顺序绘制曲线,这样不希望在图例中显示的线条就会出现在最后。也就是说,假设您有N条要绘制的线条,但不希望在图例中显示其中的m条。然后首先绘制所需的N-m条线条,然后绘制剩余的m条。之后,打开图例,单击e图例和“图例属性编辑器”将显示。转到“更多属性”选项。您可以看到标题为“字符串”的条目被指定为“1xN单元格数组”。单击单元格数组图标并将大小设置为“1xN-m”。现在,图例中仅显示前N-m条曲线。
1评论
哈瑞Pulluri
哈瑞Pulluri 2016年9月26日
谢谢你,先生,谢谢你给出了答案

登录以发表评论。


阿克什拉文德兰酒店
阿克什拉文德兰酒店 2015年11月26日
为什么这个错误总是出现?
<<
>>
3评论
沃尔特·罗伯森
沃尔特·罗伯森 2016年11月17日
不,在每个情况下,zwc等是表达式,没有空格在他们,[zwc…与[z, w, c,…]相同
表达式中的空格有时会触发解析,就好像有多个表达式一样。例如:
[1 2 * x]
被认为是两个表达式,1和-2*x

登录以发表评论。


卢克·马斯登
卢克·马斯登 2017年2月2日
我试着用这行代码做类似的事情:
[p4 RETU_Average activity1 Vulcanian1],“倾斜”“RETU意味着振幅”“活动”“火山的“爆炸”“位置”“东北”);
我得到这个错误:
错误使用matlab.graphics.chart.primitive.Line / horzcat
不能将双精度值23转换为句柄
错误在p1_zoom_plot(第93行)中
腿部=图例([p4 RETU_平均值,活动1火山1],“倾斜”“RETU意味着振幅”“活动”“火山的“爆炸”“位置”“东北”);
2的评论
卢克·马斯登
卢克·马斯登 2017年2月3日
谢谢你的回复,沃尔特。在你的帮助下,我解决了这个问题。
23是向量“RETU_Average”中的第一个值。我试图将向量传递给图例,而不是使用这行代码创建的句柄。
p1 = plot(时间,RETU_Average,“线宽”2);
新的图例文本,供犯类似错误的其他人参考:
支腿=图例([p4 p1活动1火山1],“倾斜”“RETU意味着振幅”“活动”“火山的“爆炸”“位置”“东北”);

登录以发表评论。


胡安·卡洛斯·德卢纳
在打印浏览器中选择“线”,然后键入
集(get (get (gco,“注释”),“LegendInformation”),“IconDisplayStyle”“关”
1评论
巴特Boonstra
巴特Boonstra 2021年4月12日
谢谢你帮了我!

登录以发表评论。


迪亚
迪亚 2020年11月17日
编辑:迪亚 2020年11月17日
你可以简单地通过以下方法删除最后一个不需要的条目:
%假设您在此线之前绘制了一些曲线,并且所有曲线都希望显示在图例中
hleg=图例(“显示”);
情节(x, y)你不需要在传说中有这样的情节
处理字符串(结束)=[];%删除最后一个绘图的最后一个图例条目
%继续绘图,同时在图例中任何不需要的绘图之后立即复制粘贴上一行

下载188bet金宝搏

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始打猎吧!