Effacer les filtres
Effacer les filtres

Creating an inset figure from an other fig file

12 vues (au cours des 30 derniers jours)
Wissem-Eddine KHATLA
Wissem-Eddine KHATLA le 12 Mar 2024
Commenté : Voss le 13 Mar 2024
Hello everyone,
I am trying to create an inset in a figure based on a different figure.
Basically, I have a plot that generates a figure and then I add :
handaxes2 = axes('position', [0.52 0.52 0.38 0.38]);
To create my inset figure and then I plot my data. But I don't know how I can do it with an other .fig file instead of a set of data ?
I have attached my fig files if needed,
Thank you for your help,
Best regards.

Réponse acceptée

Voss
Voss le 12 Mar 2024
% open the first figure
fig1 = openfig('figure1.fig','visible');
% create the new axes
ax2 = axes(fig1,'Units','normalized','position',[0.52 0.52 0.38 0.38]);
% open the second figure
fig2 = openfig('figure2.fig','invisible');
% copy the stuff from the second figure's axes into the new axes
ch = findall(fig2.CurrentAxes);
ch(ch == fig2.CurrentAxes) = [];
copyobj(ch,ax2)
% delete the second figure
delete(fig2)
  2 commentaires
Wissem-Eddine KHATLA
Wissem-Eddine KHATLA le 13 Mar 2024
Thank you @Voss : your help was appreciated. Indeed, I was looking for this particular function to copy a whole figure dataset.
Voss
Voss le 13 Mar 2024
You're welcome! Any other questions, please let me know.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Printing and Saving dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by