Mein Programm erzeugt während des Befehlszyklus kleine Zahlen. Gibt es eine Möglichkeit, diese Zahlen einfach zu speichern und später in einer Figur zu kombinieren?Unterpläne erzeugen und später in MATLAB zu einer Figur zusammenfügen
Antwort
Betrachten Sie den Code:
hFig = figure;
%# create temporary subplots as template
for i=1:2, h(i) = subplot(2,1,i); end %# create subplots
pos = get(h, 'Position'); %# record their positions
delete(h) %# delete them
%# load the .fig files inside the new figure
fileNames = {'a.fig' 'b.fig'}; %# saved *.fig file names
for i=1:2
%# load fig
hFigFile = hgload(fileNames{i});
%# move/copy axis from old fig to new fig
hAx = get(hFigFile, 'Child'); %# hAx = gca;
set(hAx, 'Parent',hFig)
%#hAx = copyobj(hAx,hFig);
%# resize it to match subplot position
set(hAx, 'Position',pos{i});
%# delete old fig
delete(hFigFile)
end
Das von diesem newsgroup discussion
Ich habe eine Antwort hier als Beispiel:
h1 = figure(1)
plot(1:10,'o-r');
title('title');
xlabel('xlabel');
ylabel('ylabel');
% Copy contents
ch(1) = copyobj(gca,gcf);
% Figure 2
h2 = figure(2)
plot(1:30,'o-r');
title('title fig2');
xlabel('xlabel');
ylabel('ylabel');
% copy contents
ch(2) = copyobj(gca,gcf);
figure(3)
sh = subplot(1,2,1);
clear axes
p = get(sh,'position');
ah = copyobj(ch(1),gcf);
set(ah,'position',p);
% Create axis template
sh = subplot(1,2,2);
clear axes
p = get(sh,'position');
ah = copyobj(ch(2),gcf);
set(ah,'position',p);
% Delete template
% delete(sh);
Amro's solution Werke stark angepasst wurde, aber mit Boxplots Sie haben um die Xtick- und Xtick-Labels zurückzusetzen, ansonsten werden sie aus irgendeinem Grund nicht entsprechend dem Subplot angepasst. Wenn Sie die boxplot erstellen oder nachdem Sie die Zahl Add Eröffnung:
set(gca,'XTick',<1d vector>,'XTickLabel',<1d cell vector>)
oder automatische Zecken setzen und Etiketten
set(gca,'XTickMode','auto','XTickLabelMode','auto')
interessant, danke für die Freigabe. Haben Sie versucht, statt Achsen zu kopieren (die kommentierte Zeile in meinem Code)? Um ehrlich zu sein, meine Lösung ist nicht ohne Fehler; zum Beispiel würde es scheitern, wenn die Figuren unterschiedliche Colormaps hätten (es sei denn, du nimmst den [extra Aufwand] (http://www.mathworks.com/support/solutions/en/data/1-GNRWEH/index.html) um zu arbeiten Das) – Amro
- 1. Figur Druck in Matlab
- 2. Linienstränge in MATLAB-Legende zusammenfügen
- 3. Verschiedene Unterpläne auf verschiedenen Abbildungen - MATLAB
- 4. Matlab: Ist es möglich, die Farbleiste einer Figur zu drehen?
- 5. MATLAB-Figur in hochauflösendes Bitmap-Bild exportieren
- 6. Wie erzeugen Sie in MATLAB Doppeltonfrequenzen?
- 7. wie matlab figur in winform anwendung plotten?
- 8. wie man die Figur zu Farbe eps in Matlab
- 9. Listen in einer Liste zusammenfügen?
- 10. Mehrere Join-Datensätze zu einer ID zusammenfügen
- 11. Ein vorhandenes MATLAB-Plot in eine andere Figur plotten
- 12. TOC und Figur nebeneinander in einer Folie
- 13. Strings verketten, während mit Figur Befehl (MATLAB)
- 14. Matlab Figur Titel w/LaTeX erscheint nicht?
- 15. MATLAB Figur Export ist sehr langsam im Vergleich zu R
- 16. Schreiben Sie eine Figur in MATLAB automatisch in eine Datei
- 17. Ordnerstruktur kopieren und Unterverzeichnisse zusammenfügen
- 18. Erzeugen eines Gauß-Datensatzes in MATLAB
- 19. Datenrahmen in einer for-Schleife zusammenfügen
- 20. Viewing Teil einer Figur
- 21. Unterpläne aus mehreren Textdateien in einer Schleife erstellen
- 22. Inhalt der Figur in Matlab in eine Matrix speichern (ohne getframe oder in Datei zu speichern)
- 23. Karte zusammenfügen und Wert ändern
- 24. Änderung Figur Größe und Figur Format in matplotlib
- 25. Wie erstellt man eine neue Figur in MATLAB?
- 26. Erzeugen von Heatmap aus dem Leistungsspektrum, Matlab
- 27. R ginv und Matlab pinv erzeugen unterschiedliche Ergebnisse
- 28. Kernbibliotheken zusammenfügen
- 29. Zwei Bilder zusammenfügen
- 30. matplotlib - Duplikate von einer Figur zur anderen?
erstaunlich, wirklich sehr gut. Vielen Dank, das spart viel Schmerz. – Vass
und der Link zur Newsgroup-Diskussion ist nützlich – Vass