Legend doesn't match my plot style
조회 수: 2 (최근 30일)
이전 댓글 표시
I'm trying to match the legend with plot style, but it only shows the legend wrong.The problem is I have 3 different plot styles and different colors but the legend doesn't match with plot.
Here is my code:
figure;
hold all;
plot(max_time1,R1M1V1,'bs');
plot(max_time2,R2M1V1,'-.r');
plot(max_time3,R3M1V1,'--m');
title('Impedance Vs Time');
legend({'R1M1V1','R2M1V1','R3M1V1'});
hold off;
The output is below.
What am I doing wrong?
Thanks in advance
댓글 수: 0
채택된 답변
Image Analyst
2019년 12월 3일
편집: Image Analyst
2019년 12월 3일
Are they vectors or matrices? Can you attach your data?
Anyway, put hold on after the first call to plot. That's the way I always do it, ,though hold all before might work
plot(max_time1,R1M1V1,'bs');
hold on;
plot(max_time2,R2M1V1,'-.r');
plot(max_time3,R3M1V1,'--m');
댓글 수: 2
Image Analyst
2019년 12월 3일
Error using xlsread (line 136)
XLSREAD unable to open file 'V-CAMARA_M2'.
File 'V-CAMARA_M2' not found.
Error in test5 (line 15)
voltage1_data=29671.2*xlsread(filename,sheet,voltage1);
Still can't reproduce. Can you attach the workbook?
추가 답변 (1개)
Hank
2019년 12월 3일
It looks like R1M1V1 is plotting three different curves. This could happen if max_time1 is a vector but R1M1V1 is a Nx3 matrix.
Plot will interpret each of the columns as a separate curve. Then, when you say legend('R1','R2','R3'), only the first three curves are labeled.
If all the data in R1M1V1 is the same type, they can be plotted in a single curve
plot(max_time, R1M1V1(:),'sb'); % use the 'vector(:)' syntax to force all the data into a column vector
% % do this for all the plots
참고 항목
카테고리
Help Center 및 File Exchange에서 Legend에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!