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

Hintergrundbild in Plot verschieben?

 

nano
Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 12.10.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.02.2011, 00:08     Titel: Hintergrundbild in Plot verschieben?
  Antworten mit Zitat      
Hallo,

ich möchte aus einer txt-Datei 2 Spalten auslesen und auf ein Hintergrundbild plotten. Wenn ich das Bild lade, geht die x-Achse von 0 bis knapp über 900 und die y-Achse von 0 bis knapp über 700. Der Graph den ich aus den 2 Spalten plotten will, liegt auf der x-Achse jedoch zw. -80 und 40 und auf der y-Achse zwischen 100 und 1000. Wenn ich also das Bild lade und dann über xlim etc. die Grenzen angebe rutscht das Hintergrundbild immer raus.
Lässt sich das Hintergrundbild nicht direkt auf mein gewünschtes Intervall skalieren?

Mit freundlichen Grüßen
Private Nachricht senden Benutzer-Profile anzeigen


Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 28.02.2011, 12:27     Titel:
  Antworten mit Zitat      
Nachdem Du das Bild geplottet hast, kannst Du
Dir ein neues Achsen-System bauen:
Code:

achsen1= gca;
achsen2= axes('Position',get(achsen1,'Position'),...
           'XAxisLocation','top',...
           'YAxisLocation','right',...
           'Color','none',...
           'XColor','k','YColor','k');
 

Am Ende einfach auf das zweite Achsen-System plotten:
Code:

plot(x2,y2, 'Parent',achsen2);
 


(Er plottet die zweiten Achsen Recht und oben)
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 28.02.2011, 12:32     Titel:
  Antworten mit Zitat      
Noch eine Kleine Ergänzung: je nachdem was Du vor hast und ob Du eine GUI nutzt, kannst Du auch zwei figures übereinander legen und bei der oberen den Hintergrund transparent machen. Dann kannst Du den oberen Plot neu zeichnen ohne immer das Bild neu zu plotten.
Private Nachricht senden Benutzer-Profile anzeigen
 
nano
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 12.10.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.02.2011, 22:49     Titel:
  Antworten mit Zitat      
Danke, eigentlich reicht die Neudefinition der Achsen, allerdings würde mich aus reiner Neugier doch interessieren, wie man 2 figures übereinander legt?

Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 01.03.2011, 09:46     Titel:
  Antworten mit Zitat      
Habe dies mit GUIDE gemacht. Dazu habe ich einfach zwei "Axes" übereinander gelegt.


Die untere ist ein image(Bild-Matrix). Da diese aber nicht ständig plotten möchte (brauche) habe eine drauf gelegt.
In der OpeningFcn habe ich dann die Achsen ausgeblendet und die den "Hintergrund" enfernt. Am Ende natürlich die Handles-Struc updaten

in der OpeningFcn :
Code:

plot(tmp, 'LineWidth',5,'parent', handles.NadelAnimationen);
set(handles.NadelAnimationen,'color','none');
set(handles.NadelAnimationen,'ytick',[])
set(handles.NadelAnimationen,'xtick',[])

%........

guidata(hObject, handles);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
nano
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 12.10.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.03.2011, 22:43     Titel:
  Antworten mit Zitat      
ah, gut zu wissen.

Vielen Dank!
Gruß
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.