Verfasst am: 20.05.2010, 08:42
Titel: Subplot in uipanel axes
Hallo,
ich hab mit GUIDE eine Gui erstellt, mit ein paar Eingabefeldern und einen paar Knöpfen (ist ja egal) und einer Zeichenoberfläche.
jetzt habe ich ein Skript, das, je nach Eingabedaten, eine Figure mit 2 Subplots aufmacht. Was ich will ist, das diese zwei Subplot an dem durch das handles.axes1 vordefinierten Platz auf der GUI erscheinen. Wie mache ich das?
Ich habe mich mit einem Workaround begnügt, indem ich die GUI in 3 Subplots aufteile, meine Eingabedaten im ersten habe und in den zweiten und dritten direkt plotte, ohne überhaupt eine Axes zu haben. Aber das ist leider sehr sehr sehr sehr sehr unschön.
Um das zu realisieren musst Du beim Aufruf der Befehlen SUBPLOT den "Parent" Parameter übergeben.
Der Bereich in der GUI, der diese SUBPLOT's aufnehmen soll musst Du nicht mit der Axes "reservieren", sondern mit der UIPANEL. Und den handle von dem UIPANEL übergibst Du als "Parent"-Parameter beim Aufruf von SUBPLOT
Vielen Dank für die Hilfe, werde von da an weiterarbeiten.
Leider glaube ich nicht daran dass ich sehr weit kommen werde, da die plots in einem extra skript geschehen, ich also keinerlei übergabe Parameter einbauen kann, und den Code nur geringfügig verändern kann.
Den Code in dem geplottet wird zu kopieren ist keine Option.
Ich kann mit gcf im Skript zwar das Fenster (gut genug) bestimmen in das geplottet werden soll, aber mehr auch nicht.
vielleicht funktioniert ja etwas im stile von "get(gcf.Children.uipanel)" aber wie genau der Befehl heißen müsste weis ich nicht.
vielen Dank, das funktioniert alles sehr gut.
ich habe beide Lösungen zum laufen gebracht, und werde mich für die zweite entscheiden (das "klauen" der bilder aus dem alten Plot).
Leider habe ich schon wieder ein Problem:
der obere Subplot sprengt den Platzrahmen. aber nicht im ursprünglichen Plot, sondern nur im UIPANEL nach dem ich es geklaut habe. (Die weiße Box passt vom Platz, aber der Plot darin läuft weiter nach rechts bis über den Fensterrand)
Woran liegt das? schätzt der erste Plot den Platzbedarf falsch ein? Sollte ich das per hand ändern? ich arbeite mit units normalized, falls das wichtig ist.
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
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.