MATLAB: Can a clabel be saved

clabelcopyobj

I'm plotting some contour lines and labeling them manually like this:
[C,h] = contour(peaks);
cl = clabel(C,h,'manual')
I can copy the contour lines and labels to another subplot or another figure like this:
copyobj(h,gca)
copyobj(cl,gca)
but if I close the original figure, copyobj no longer works. I'd like to be able to manually create contour labels one time, then save them and be able to copy them exactly to another figure, even if I close Matlab. Can these objects be saved and reproduced? I would simply place the text manually, but the clabel function nicely breaks contour lines where labels are placed.
I'm using 2012b.

Best Answer

The output of clabel() is text and line objects. Those can be saved to a .mat file and the .mat file can be copied around outside of MATLAB. However, copying the objects into another graph in MATLAB would require loading the .mat file, which would recreate the graphics objects -- and text and line objects can only exist inside an axes inside a figure. It is not possible to have text or line objects hanging around disconnected from any figure. (You can make the figure invisible through.)