|
|
Darstellen von mehreren Graphen in einem Plot |
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 20:02
Titel:
|
 |
Mir hat gerade jemand erklärt wie man es macht:
%% Aufräumen
clear all; close all; clc;
%% Zwei Kurven anlegen und speichern
t=-2*pi:0.1:2*pi;
y1=sin(t);
y2=cos(t);
plot(t,y1,'rx-');
saveas(gcf,'Sinus.fig');
close all;
plot(t,y2,'bo-');
saveas(gcf,'Cosinus.fig');
close all;
%% Die gespeicherten Kurven laden und kombinieren
clear all; clc;
s=hgload('Sinus.fig');
c=hgload('Cosinus.fig');
figure; % in Subplots
h_1=subplot(2,1,1);
h_2=subplot(2,1,2);
copyobj(allchild(get(s,'CurrentAxes')),h_1);
copyobj(allchild(get(c,'CurrentAxes')),h_2);
figure; % in einem Plot
h_3=axes;
copyobj(allchild(get(s,'CurrentAxes')),h_3);
copyobj(allchild(get(c,'CurrentAxes')),h_3);
Einziges Problem hierbei ist noch, daß nur das rechte unter Panel aus beiden *.fig files kombiniert wird, aber das versuche ich jetzt noch hinzukriegen.
Vielen Dank für Eure Hilfe!!!!!
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 20:29
Titel:
|
 |
Hallo,
die Rückfrage verstehe ich inhaltlich nicht. Bezieht sie sich überhaupt auf den darüber stehenden Beispielcode?
Bei meinem Vorschlag hätte man übrigens vermutlich nur noch Modifikationen einbauen müssen, um mit zwei Figures und (vermutlich) mehreren Koordinatensystemen / Linien zu arbeiten.
Grüße,
Harald
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 21:08
Titel:
|
 |
Die Rückfrage war auf den obigen Post bezogen.
Mein Problem ist ehrlich gesagt, daß mir jegliche Grundlagen in Matlab, fehlen, daher fällt es mir schwer größere Modifikationen vorzunehmen.
Daher auch mein Problem bei dem von mir zuletzt geposteten Beispiel. Ich müsste dort irgendwie erreichen, dass er das ganze für alle 4 Panels durch führt (die *.fig-Dateien bestehe aus jeweils 4 Panels).
Zurzeit nimmt er nur den unteren rechten. Ich versuche gerade in der Klammer von Subplot andere Zahlen einzusetzen, dies hat leider keinen Effekt auf das Panel, das benutzt wird.
Bin für Vorschläge dankbar.
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 21:10
Titel:
|
 |
Also dazu mal kurz, der Code wie ich ihn jetzt verwendet habe (meine Dateien heißen Model1 und Model2):
%% Die gespeicherten Kurven laden und kombinieren
clear all; clc;
s=hgload('model1.fig');
c=hgload('model2.fig');
figure; % in Subplots
h_1=subplot(2,1,1);
h_2=subplot(2,1,2);
copyobj(allchild(get(s,'CurrentAxes')),h_1);
copyobj(allchild(get(c,'CurrentAxes')),h_2);
figure; % in einem Plot
h_3=axes;
copyobj(allchild(get(s,'CurrentAxes')),h_3);
copyobj(allchild(get(c,'CurrentAxes')),h_3);
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 22:33
Titel:
|
 |
Hallo,
was verstehst du unter einer Panel? Verschiedene Bereiche (Subplots), oder etwas anderes? Falls letzteres, bitte mal einen Screenshot anhängen. Falls ersteres, dann liegt das Problem in diesen Befehlen:
Damit werden nur die Objekte im momentanen Koordinatensystem (deswegen CurrentAxes) erfasst.
Was soll denn letztlich eigentlich erreicht werden? Die Fragen jetzt haben ja mit denen am Anfang nicht sooo viel zu tun. Vor allem kommst du ja mit dem Code, der dir gegeben wurde, nicht an die Daten?
Es ist auch nicht unbedingt sinnvoll, gleich in der Mitte mit einer Programmiersprache anfangen. Vielleicht mal ein einführendes Skript durcharbeiten, oder eine Vorlesung oder einen Kurs besuchen?
Grüße,
Harald
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 23:08
Titel:
|
 |
Mit Panel meinte ich die Supblots, sorry. Hab beide Figures angefügt .
Ziel ist es jeden einzelnen Subplot (es gibt 4) aus der ersten *.fig mit denen aus dem zweiten *.fig zu kombinieren, so daß ein neue figure datei mit 4 subplots entsteht, die die Graphen aus den vorigen *.fig Dateien darstellt.
Mit dem obigen Code, kann ich wie gesagt beide figure-Dateien öffnen (ich habe den Namen der files oben abkekürzt) und die darin enthaltenen subplots rechts unten miteinander kombinieren.
Ich stimme durchaus zu daß es nicht sehr sinnvoll ist mittendrin mit Matlab anzufangen. Ich arbeite in der Tat gerade eine Einführung in Matlab durch, nur sind meine Probleme in Matlab leider weiter als ich in dem Buch.
Danke nochmal für die Hilfe.
Beschreibung: |
|
 Download |
Dateiname: |
lin_model_b_ii_IRF_epsilon_a.fig |
Dateigröße: |
11.12 KB |
Heruntergeladen: |
566 mal |
Beschreibung: |
|
 Download |
Dateiname: |
lin_model_b_i_IRF_epsilon_a.fig |
Dateigröße: |
11.13 KB |
Heruntergeladen: |
579 mal |
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 23:33
Titel:
|
 |
Hallo,
probier das:
Grüße,
Harald
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.12.2009, 23:59
Titel:
|
 |
Dankeschön, das war genau was ich gemeint hatte.
Allerdings sehen die kombinierten Funktionen etwas anders aus, als in der Version die ich per Drag und Drop erreicht hatte (also die eine der beiden Funktionen verläuft jeweils ganz anders- man sieht es auch wenn man beide fig_files öffnent und mit Augenmaß vergleicht). Woran könnte das denn liegen?
Vielen, vielen Dank nochmal für die Mühe.
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.12.2009, 00:03
Titel:
|
 |
Könnte es vielleicht daran liegen, dass die falschen subplots miteinander kombiniert wurden? Es sieht etwas danach aus so pi mal daumen.
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.12.2009, 02:34
Titel:
|
 |
Hab es gerade nochmal nachgeschaut, und das ist genau das Problem.
Subplot 11 aus fig1 is kombiniert mit Subplot 22 aus fig2
Subplot 12 aus fig1 is kombiniert mit Subplot 21 aus fig2
Subplot 21 aus fig1 is kombiniert mit Subplot 12 aus fig2
Subplot 22 aus fig1 is kombiniert mit Subplot 11 aus fig2
Kann man das irgendwie korrigieren? Also so dass 11 jeweils mit 11 kombiniert wird etc.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.12.2009, 09:55
Titel:
|
 |
In dem Fall wird es reichen, die Koordinatensysteme umzusortieren, d.h. die eine Zeile abändern in
Grüße,
Harald
|
|
|
Fontana |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.12.2009, 11:06
Titel:
|
 |
Perfekt, genau das war es. Jetzt sehen sie so aus wie sie sollen.
Vielen, vielen Dank nochmal für die schnelle Hilfe, Ich weiß es sehr zu schätzen!!!!!
|
|
|
|
Gehe zu Seite Zurück 1, 2
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|