フィルターのクリア

figureの複製方法について

37 ビュー (過去 30 日間)
Naoki Hiraiwa
Naoki Hiraiwa 2019 年 12 月 3 日
編集済み: michio 2019 年 12 月 4 日
例えば,図1にsin(x)をプロットして,図2にsin(x)とcos(x)をプロットしたい場合,
f1 = figure;
plot(x,sin(x));
f2 = figure;
plot(x,sin(x));
plot(x,cos(x));
のようにするのではなく,
f1を作成してsin(x)をプロットした後に,新しくfigureウインドウをつくりそこにf1にプロットされたものを貼り付けてからcos(x)を上書きする
といったことは可能でしょうか.
何か方法があれば教えてください.

採用された回答

Akira Agata
Akira Agata 2019 年 12 月 4 日
copyobj関数が使えるかと思います。
以下は簡単なサンプルコードです。
x = linspace(0,4*pi);
figure
plot(x,sin(x))
ax = gca;
hFig = figure;
copyobj(ax,hFig) % Copy plot(s) in the previous figure
hold on
plot(x,cos(x))
  1 件のコメント
Naoki Hiraiwa
Naoki Hiraiwa 2019 年 12 月 4 日
ありがとうございます.axをfigureにコピーすればプロットしたデータを複製できるのが盲点でした.ありがとうございます.

サインインしてコメントする。

その他の回答 (1 件)

Takumi
Takumi 2019 年 12 月 4 日
copyobj関数を使うと良いと思います。 同様の質問がありますので以下を参考にしてください。 How to copy a figure in anothe figure?
  1 件のコメント
Naoki Hiraiwa
Naoki Hiraiwa 2019 年 12 月 4 日
同じ質問があることに気づきませんでした.ありがとうございます.

サインインしてコメントする。

カテゴリ

Help Center および File Exchange2 次元および 3 次元プロット についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!