How to have two legends on the same plot?

조회 수: 448 (최근 30일)
Miguel Martinez
Miguel Martinez 2023년 2월 23일
댓글: Umar 2024년 8월 5일
I just want to see a basic example of how to put two legends on the same plot on MATLAB 2020 and beyond...
  댓글 수: 1
Umar
Umar 2024년 8월 5일

Hi @ Miguel Martinez,

To address your query regarding, “ However, when using semilogy it didn't work”

First, generate some sample data for plotting. For this example, we will create two sets of data.

x = 1:10;

y1 = 10 ./ x;

y2 = log(x);

Plot the data using the semilogy function.

semilogy(x, y1, 'b', x, y2, 'r');

Add legends for both datasets using the legend function. To display two legends, you can use the legend function twice.

legend('Data 1', 'Data 2'); legend('Location', 'northwest'); % Adjust the location of the first legend

If you want, you can customize the legends further by specifying the location, font size, font weight, etc. For example:

legend('Data 1', 'Data 2', 'Location', 'northwest', 'FontSize', 10, 'FontWeight', 'bold');

Please see attached plot.

댓글을 달려면 로그인하십시오.

답변 (2개)

Askic V
Askic V 2023년 2월 23일
Perhaps you meant this:
t = 0:0.1:5;
y = sin(t);
z = cos(t);
figure; hold on;
for i = 1:2
p1(i) = plot(t, y,'r');
p2(i) = plot(t, z,'b');
end
hold off
legend([p1(1) p2(1)],'sin', 'cos');
ah1 = axes('position',get(gca,'position'),'visible','off');
legend(ah1, [p1(2) p2(2)], {'Test1','Test2'}, 'Location','SouthWest');
  댓글 수: 2
Magalhães, A. L.
Magalhães, A. L. 2024년 8월 3일
It worked fine for me. However, when using semilogy it didn't work. Apparently, this method forces it to be just a plot.
Magalhães, A. L.
Magalhães, A. L. 2024년 8월 3일
편집: Magalhães, A. L. 2024년 8월 3일
All you need to fix this is to add the following row after the last semilogy's row:
set(gca,'yscale','log')

댓글을 달려면 로그인하십시오.


KSSV
KSSV 2023년 2월 23일
figure
hold on
plot(rand(1,10),'r')
plot(rand(1,10),'b')
legend('One','Two')

카테고리

Help CenterFile Exchange에서 Legend에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by