WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Zoom in 2 übereinander liegenden axes

 

Timmmo

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2011, 15:46     Titel: Zoom in 2 übereinander liegenden axes
  Antworten mit Zitat      
Hallo Zusammen,

hatte ein kleines Problem und habe es auch gelöst. Allerdings ist die Lösung nicht gerade die "Schönste", deshalb hab' ich mich gefragt ob das Ganze auch einfacher gehen würde.
Ich plotte in meinem GUI zwei plots in jeweils eine eigene axes. Die beiden axes liegen allerdings exakt übereinander. Über einen Pushbutton schalte ich jeweils eine Grafik samt axes invisible. Zusätzlich hab ich einen Pushbutton gebaut mit dem man die Zoomfunktion ein/ausschalten kann. Es soll möglich sein in jeweils die Grafik reinzuzoomen, die gerade visible ist. Der Zoombefehl bezieht sich allerdings immer auf die oberste axes, auch wenn diese unsichtbar ist. (der Befehl
Code:
für auch nicht zum Ziel, da die Skalierung der plots sich dann verändert).

Meine Lösung: Der Pushbutton, der die Grafiken visible bzw. invisible setzt verschiebt gleichzeitig die unsichtbare axes in einen anderen Bereich des GUIs, somit ist ein Zoomen in der darunter liegenden Grafik möglich.

Da das aber nur eine "unsaubere" Behelfslösung ist, hab ich mich gefragt, ob das nicht irgendwie einfacher auch gehen würde...

Vielen Dank für eure Tips...
LG Timo


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 06.03.2011, 00:07     Titel: Re: Zoom in 2 übereinander liegenden axes
  Antworten mit Zitat      
Hallo Timmmo,

Du könntest das sichtbare AXES Objekt per UISTACK in den Vordergrund legen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Timmmo

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2011, 15:21     Titel: Re: Zoom in 2 übereinander liegenden axes
  Antworten mit Zitat      
Jan S hat Folgendes geschrieben:
Hallo Timmmo,

Du könntest das sichtbare AXES Objekt per UISTACK in den Vordergrund legen.

Gruß, Jan


Hey Jan!

Danke für den Tip, den Befehl kannte ich bis jetzt noch nicht... werd ich gleich mal testen!

LG Uwe
 
Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 09.03.2011, 10:58     Titel:
  Antworten mit Zitat      
Ich kenne die Zoomfunktion zwar nicht, die Du benutzt, aber die meisten Funktionen kann man doch mitteilen, welche Axes benutzt wird.
z.B. beim Plot-befehlt mit
plot(x,y, 'parent',handles.gewünschteAxes );

Sollte es eine selbstgeschriebe Zoom-funktion sein, würde ich dies z.B. so verändern:
Code:

...
zoomFct( [...], handles.gewünschteAxes);
...
 
Code:

function zoomFct( [...], zielPlot)
   axes(zielPlot);
   ....
end
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.