J'aimerais ajouter deux légendes à un terrain à Matlab. Comment puis-je faire cela? P>
4 Réponses :
Vous pouvez créer un deuxième axe superposé, avec une légende de son propre (dans un emplacement différent du parcours).
Voici un exemple rapide: P > p> p>
Pour créer une légende collante, vous pouvez appeler la fonction Ceci fonctionne dans un seul axes (pas besoin de créer un second axes superposés) et plusieurs légendes peuvent être ajoutées de cette manière. p> Exemple: P> copyobj code>
CLOXOBJ code> conserve simplement sa légende associée dans la figure. p>
%declare figure
hfigure = figure('Color', 'w');
%plot 2 lines (red and blue)
hplot1 = plot(1:10,'r-.x');
hold on;
hplot2 = plot(10:-1:1,'b--o');
%plot legends
hlegend1 = legend(hplot1, 'Data 1', 'Location','East'); %display legend 1
new_handle = copyobj(hlegend1,hfigure); %copy legend 1 --> retain
legend(hplot2, 'Data 2', 'Location','West'); %display legend 2
Cette méthode ne fonctionne pas avec moi (R2016A), pas même lorsque vous utilisez «héritage» comme option.
Après avoir effectué la première légende, faites une nouvelle poignée d'axe invisible:
legend(ax,...);
J'ai essayé cela dans R2016B sans succès: Plot1; ajuster xticks et yticks; nouveaux axes; ...; Les nouvelles tiques et les étiquettes se chevauchent avec les anciens.
Exemple pour plusieurs parcelles:
hAx(1) = axes(); hold on hLine(1) = plot(1:10, 'Parent',hAx(1),'color','b'); hLine(2) = plot(3:15, 'Parent',hAx(1),'color','b', 'linestyle','--'); set(hAx(1), 'Box','off') legend([hLine(1), hLine(2)],{ 'line' 'line2'}) %# copy the axis hAx(2) = copyobj(hAx(1),gcf); delete( get(hAx(2),'Children') ) %# delete its children hold on hLine(3) = plot(sin(1:10), 'Color','r','Parent',hAx(2)); hLine(4) = plot(cos(1:10), 'Color','r','linestyle','--','Parent',hAx(2)); hold off set(hAx(2), 'Color','none', 'XTick',[], ... 'YAxisLocation','right', 'Box','off') %# make it transparent legend([hLine(3),hLine(4)], {'sin' , 'cos'}, 'Location','NorthWest', 'Color','w') %legend(hLine(3), {'sin'}, 'Location','NorthWest', 'Color','w')
Totalement nonobevieux, mais c'était ce dont j'avais besoin en octave, THX: La légende ([HLINE (3), HLINE (4)], {'sin', 'cos'}) code>