Legend of a plot out of table first row

조회 수: 8 (최근 30일)
Frederik Reese
Frederik Reese 2022년 5월 10일
답변: Voss 2022년 5월 11일
Hi
I have the attached table. I Plot in a for loop an want as a legend the first row of the table.
Can someone help me ?
Thanks
  댓글 수: 2
Riccardo Scorretti
Riccardo Scorretti 2022년 5월 10일
Your question is too vague: the table reads:
load Test_Table.mat
Test_Table
Test_Table = 21×1 table
Arc2ZTime00000000000450280 _____________________________________________ " Arc 2, Z, Time: 0 00:00:00→→0,260→450,285" " Arc 2, Z, Time: 0 00:00:00→→1,468→450,274" " Arc 2, Z, Time: 0 00:00:00→→2,798→450,275" " Arc 2, Z, Time: 0 00:00:00→→3,999→450,310" " Arc 2, Z, Time: 0 00:00:00→→5,202→450,320" " Arc 2, Z, Time: 0 00:00:00→→6,395→450,340" " Arc 2, Z, Time: 0 00:00:00→→7,591→450,342" " Arc 2, Z, Time: 0 00:00:00→→8,641→450,342" " Arc 2, Z, Time: 0 00:00:00→→9,835→450,348" " Arc 2, Z, Time: 0 00:00:00→→10,757→450,353" " Arc 2, Z, Time: 0 00:00:00→→11,942→450,330" " Arc 2, Z, Time: 0 00:00:00→→12,897→450,295" " Arc 2, Z, Time: 0 00:00:00→→15,207→450,519" " Arc 2, Z, Time: 0 00:00:00→→15,483→450,529" " Arc 2, Z, Time: 0 00:00:00→→15,707→450,532" " Arc 2, Z, Time: 0 00:00:00→→15,930→450,535"
What do you want to plot? Post the data, and a simple example of what you would like to obtain.
Frederik Reese
Frederik Reese 2022년 5월 10일
A= [1:196];
A = array2table (A)
%11: 16:51, 12: 52:84 13:85:117
%11:6:17, 12: 18:28, 13: 29:39
ModellD_BHQ = PegelpunktetimeseriesneuCopy(1:3:end, :)
ModellD_HQ5000 = PegelpunktetimeseriesneuCopy(2:3:end, :)
ModellD_HQ10000 = PegelpunktetimeseriesneuCopy(3:3:end, :)
ModellD_HQ10000 = removevars(ModellD_HQ10000, 'Linkes_Uferwspl_D_Ist_beidseitig');
ModellD_BHQ = removevars(ModellD_BHQ, 'Linkes_Uferwspl_D_Ist_beidseitig');
ModellD_HQ5000 = removevars(ModellD_HQ5000, 'Linkes_Uferwspl_D_Ist_beidseitig');
ModellD_HQ50001 = ModellD_HQ5000{:,1:84};
ModellD_HQ100001 = ModellD_HQ10000{:,1:84};
ModellD_BHQ1 = ModellD_BHQ{:,1:84};
for i=29:39
sgtitle('WSPL zeitlicher Verlauf Modell D Pegelpunkte FKM 113')
subplot(3,1,1)
plot(ModellD_BHQ{i,:})
hold on
grid on
title ('BHQ')
xlabel ('Zeit [h]')
ylabel ('WSPL [m]')
subplot(3,1,2)
plot(ModellD_HQ5000{i,:})
hold on
grid on
title ('HQ5000')
xlabel ('Zeit [h]')
ylabel ('WSPL [m]')
subplot(3,1,3)
plot(ModellD_HQ10000{i,:})
hold on
grid on
title ('HQ10000')
xlabel('Zeit [h]')
ylabel ('WSPL [m]')
end
This is my plot code and i want to plot the Names in the first row ( for example " 114 VL_L - wspl_D_Ist_beidseitig (3)") as legend for the data which are plot
is it clearer now?

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

채택된 답변

Voss
Voss 2022년 5월 11일
I'm not sure where the legends are supposed to fit, but here you go:
S = load('PegelpunktetimeseriesneuCopy');
PegelpunktetimeseriesneuCopy = S.PegelpunktetimeseriesneuCopy;
ModellD_BHQ = PegelpunktetimeseriesneuCopy(1:3:end, :);
ModellD_HQ5000 = PegelpunktetimeseriesneuCopy(2:3:end, :);
ModellD_HQ10000 = PegelpunktetimeseriesneuCopy(3:3:end, :);
ax = [ ...
subplot(3,1,1) ...
subplot(3,1,2) ...
subplot(3,1,3) ...
];
title(ax(1),'BHQ')
title(ax(2),'HQ5000')
title(ax(3),'HQ10000')
hold(ax,'on')
grid(ax,'on')
xlabel(ax,'Zeit [h]')
ylabel(ax,'WSPL [m]')
h = [ ...
plot(ax(1),ModellD_BHQ{29:39,2:end}.') ...
plot(ax(2),ModellD_HQ5000{29:39,2:end}.') ...
plot(ax(3),ModellD_HQ10000{29:39,2:end}.') ...
];
leg = [ ...
legend(h(:,1),ModellD_BHQ{29:39,1}) ...
legend(h(:,2),ModellD_HQ5000{29:39,1}) ...
legend(h(:,3),ModellD_HQ10000{29:39,1}) ...
];
set(leg,'Interpreter','none','Location','EastOutside');
sgtitle('WSPL zeitlicher Verlauf Modell D Pegelpunkte FKM 113')

추가 답변 (0개)

카테고리

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