非表示にしたfigureが複数ある場合において,編集対象の「現在のfigure」を非表示のまま変更したい
17 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Obo Hirotaka
le 9 Oct 2021
Commenté : Obo Hirotaka
le 11 Oct 2021
figure('visible','off');
コマンドで作成された複数個の非表示figureがある場合において,非表示のまま”現在のFigure”を変更する方法はありますか?
”現在のFigure”の指定に,figure(n)コマンドを使うとウインドウが表示されてしまうので困っています.
2 commentaires
Atsushi Ueno
le 9 Oct 2021
function ans = SetTargetFigure_and_Visible_off(fig_handle)
figure(fig_handle);
set(fig_handle,'visible','off');
end
これじゃ駄目ですかね。切り替えたFigureが一瞬だけ表示されます。駄目ですよね。
Réponse acceptée
Akira Agata
le 10 Oct 2021
Modifié(e) : Akira Agata
le 10 Oct 2021
figure を作成する際にあらかじめ figure ハンドルを取得しておくことで、gcf を使わなくてもそれぞれの figure を操作可能です。例えば、以下のようにすれば 2 つの figure に対するハンドル hFig1, hFig2 を取得できます。
hFig1 = figure("Visible","off");
plot(magic(4))
hFig2 = figure("Visible","off");
surf(peaks)
このあと最初の figure を操作したい場合、gcf の設定を変えなくても hFig1 を操作すれば問題ありません。
もし何らかの理由で、どうしても gcf が指す figure を変更したい場合、以下のように set 関数を使って変更してください(ただし上記のように、あらかじめ figure ハンドルを取得しておく必要があります)。
% gcf が 1 番目の figure を指すように変更
set(groot,'CurrentFigure',hFig1);
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur 対話型コントロールとコールバック dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!