How to show legend as subfigure

4 views (last 30 days)
Dear All,
Let say I have subplots of 4 figures. First three figures have some curve plots. I want to show last figure (the forthone) as legend of figure three.
subplot(1,4,1), plot([1:100],'DisplayName','Fig 1');
subplot(1,4,2), plot([1:100],'DisplayName','Fig 2');
subplot(1,4,3), plot([1:100],'DisplayName','Fig 3');
now at figure 4 I want to show legend of figure 3. Is it possible ?

Accepted Answer

Robert Cumming
Robert Cumming on 10 Jan 2012
With some manipulation of the legend position handle you can:
EDIT: to update the text in legend
subplot(1,4,1), plot([1:100],'DisplayName','Fig 1');
subplot(1,4,2), plot([1:100],'DisplayName','Fig 2');
subplot(1,4,3), fig3handle = plot([1:100],'DisplayName','Fig 3');
a3pos = get ( gca, 'position' )
a = legend ( fig3handle )
get ( a, 'position' )
set ( a, 'position', [(a3pos(1)+a3pos(3)+(1-(a3pos(1)+a3pos(3)))/2)-a3pos(3)/2 a3pos(2) a3pos(3) a3pos(4)] )
  4 Comments
SUDIP PODDAR
SUDIP PODDAR on 19 Feb 2012
is it possible to add display name dynamically? First time it shows fig 1 & then fig 2 like
c=1:10
subplot(1,4,1), plot([1:100],'DisplayName','Fig 'c);
plz help me
Robert Cumming
Robert Cumming on 23 Feb 2012
subplot(1,4,1), plot([1:100],'DisplayName',sprintf ( 'Fig %i', c ));

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!