copy legend information - 2014b
23 views (last 30 days)
Show older comments
Hi, I want to copy few figures into a new figure with subplots. Hence as the initial step i intend to copy axes and legend information. In 2014b legend information saved as a object type.
% existing figure
h = surf(peaks);
colormap hsv
legend('temperature')
% new figure
fig = figure;
ax = axes;
new_handle = copyobj(h,ax);
colormap(fig,hsv)
view(ax,3)
grid(ax,'on')
How can I import the legend data and position to the new figure in matlab 2014b.
0 Comments
Answers (1)
Vivek Jadye
on 4 Oct 2014
It is quite easy to copy axes and corresponding legend to a new figure. All you have to do is to use copyobj function as follows.
If you want to copy a specific axes and corresponding legend to a new figure it could be done this way
% existing figure
h = surf(peaks);
colormap hsv
leg = legend('temperature'); %Store legend object for copying
ax = findobj(gcf,'type','axes'); %Retrieve the axes to be copied
% new figure
fig = figure;
copyobj([leg,ax],fig);
colormap(fig,hsv);
If you intend to copy every figure child to a new figure you can simply do the following.
% existing figure
h = surf(peaks);
colormap hsv
legend('temperature');
oldfig = gcf;
% new figure
fig = figure;
copyobj(oldfig.Children,fig);
colormap(fig,hsv);
Hope this helps.
Cheers!
3 Comments
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!