Move legend to middle of figure

186 visualizaciones (últimos 30 días)
AmericanExpat26
AmericanExpat26 el 15 de Oct. de 2016
Editada: Image Analyst el 13 de Mzo. de 2022
I am try to stacked plots of bar graphs for a scientific publication. When trying to the position of the legend, it does not fit well inside the figure area on either side and I would rather put it on the outside of the figure area to save on space. Is it possible to manually set the position of the legend in the plot area and move it into the middle where it would fit nicely. The sample code (top plot) I have for the legend so far is:
plotleg = legend('\DeltaTA','TA^{DIC-TA}_{calc}','Salinity','Location','northwest','Orientation','horizontal');
legend('boxoff');
set(plotleg,'FontSize',11);
Figure below.

Respuestas (3)

Pritesh Shah
Pritesh Shah el 15 de Oct. de 2016
In figure editor, you can move legend. (Edit-> Figure properties -> click on legend)

Image Analyst
Image Analyst el 15 de Oct. de 2016
Editada: Image Analyst el 13 de Mzo. de 2022
You can use an "outside" location option, for example
data = rand(5, 4); % Each column is one set of data (one color below in the plot).
bar(data);
grid on;
legend('Location', 'eastoutside')
title('My Title')
If you use 'northoutside', the legend bars will be stacked vertically, not horizontally like you want.
data = rand(5, 4);
bar(data);
grid on;
legend('Location', 'northoutside')
title('My Title')
See the help for all the location options.
If you use the interactive toolbar on the figure (the last icon on the right on the toolbar) to set the properties, you can click on the legend box, and move it to wherever you want it, inside or outside.

Clinnt Lunna
Clinnt Lunna el 11 de Mzo. de 2022
You can just write 'north' for the location part if you want it at top center.

Community Treasure Hunt

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

Start Hunting!

Translated by