Plot in a new figure
7 ビュー (過去 30 日間)
古いコメントを表示
Hi, I explain my problem; I have a figure with 8 subplots and i want that, when i click in a subplot of the figure with mouse, this plot should be copied in a new figure with no other plots. For the moment i do something like this:
set(gcf,'WindowButtonDownFcn',{@f_wbfcn})
function [] = f_wbfcn(varargin)
ch = get(gca,'children');
figure
copyobj(ch,axes);
The subplot is copied in a new figure, but i don't know how can i copy all the proprieties of the plot, like title, legend, label, text, etc... How can i fix it? Can anyone help me?
0 件のコメント
回答 (2 件)
Jacob Halbrooks
2012 年 3 月 12 日
With COPYOBJ, you should be able to specify the highest level object to copy, and then that object along with its children will be copied:
ax = axes;
plot(ax,1:10);
set(ax,'Color', [1 0 1]);
f=figure;
copyobj(ax, f);
My experience is that COPYOBJ will copy most properties correctly, but it will not copy callback functions, and there may be other follow-up work to do in the new figure, such as re-position a legend.
0 件のコメント
Filippo
2012 年 3 月 15 日
1 件のコメント
Matt Kindig
2012 年 3 月 15 日
When you click on the subplot, the gca output will be the current axes (subplot). So
h=gca; %this is the handle to the current subplot
参考
カテゴリ
Help Center および File Exchange で Subplots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!