group of lines with the same color (legend)
95 次查看(过去 30 天)
显示 更早的评论
i have two groups of lines, one group in blue (4 lines) and the second in red (3 lines) at the same plot. i want to create a legend with two labels - one for the blue group and the second for the red group, i can't find a function to do so. the only thing that i manage to do is to write 7 labels, and then i get label for each line but it looks stupid. i want to have only two labels for each group.
thanks
1 个评论
回答(2 个)
Walter Roberson
2015-12-11
You can record the handles of the lines, and only pass in one of the red group and one of the blue group to legend. For example,
h1 = plot(x, first_y, 'b'); %first_y has 4 columns so h1 is length 4
h2 = plot(x, second_y, 'r'); %second_y has 3 columns so h2 is length 3
legend([h1(1), h2(1)], 'Blue Meanies', 'Red Rovers')
1 个评论
Benjamin Schafer
2019-1-31
Is this still working with later versions of Matlab? The new legend command in Matlab 2018 (at least when I am runing into it) seems to want to be smart and list all lines no matter what I do with the handles. I found some gitHub threads - but man the new legend command is totally different than my workflow before which was very much like this example.
Taniel Winner
2021-7-24
Use this function I found extremely helpful and easy to use in my code.
1 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Legend 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!