|
sddsmhr |

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 25.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.01.2012, 06:33
Titel: 2D-Plot, Zoom, pcolor
|
 |
Hallo.
Ich lasse einen Plot mittels pcolor zeichnen. Hier gibt es hauptsächlich zwei Möglichkeiten:
pcolor(X,Y,C) inklusive Definition des Gitters, sowie pcolor(C) eben ohne Definition des Gitters.
Ferner habe ich noch einen Callback für die Zoom-Funktion definiert, wobei hier nach jedem Zoom die Matrix C neu berechnet und anschließend das Bild neu gezeichnet wird.
Im ersten Fall wird das Bild bereits bei einer Auflösung von etwa 1e-006 zunehmend unschärfer gezeichnet.
Im zweiten Fall tritt aufgrund der begrenzten Mantissenlänge bei Double-Zahlen der Unschärfeeffekt zwar ebenfalls, jedoch erst bei etwa 1e-014 auf. Allerdings kann ich hier mein Zoom-CB knicken, da MatLab die Gittergrenzen gar nicht kennt...
Ideen?
PS: MatLab-File zur Demonstration im Anhang.
Beschreibung: |
Kleine Demonstration der Schwächen von pcolor... |
|
 Download |
Dateiname: |
test_pcolor.m |
Dateigröße: |
2.14 KB |
Heruntergeladen: |
353 mal |
|
|
|
|
|
sddsmhr |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 25.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.01.2012, 11:12
Titel:
|
 |
Nachtrag: Man kann imagesc(X,Y,C) nutzen - hier allerdings das Problem, dass man zwar stufenweise hinein-, aber nicht stufenweise herauszoomen kann.
|
|
|
sddsmhr |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 25.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.01.2012, 05:29
Titel:
|
 |
|
 |
|
Es ist aber auch wirklich zum Mäuse melken...
Mit der obigen kleinen Einschränkung bei imagesc hätte ich ja noch leben können, abgesehen davon, dass ich leicht einen Workaround zurechtbasteln konnte.
Jetzt will ich den Befehl auch im Grafikausgabe-Modul meiner GUI nutzen, und erhalte dann so etwas:
Man beachte bitte auch die gespiegelte Ausgabe der Achsenbeschriftungen!
(andere GUI-Elemente wurden zu Testzwecken entfernt)
Ersetze ich wiederum einfach imagesc(X,Y,C,...) durch pcolor(X,Y,C,...), dann werden Achsenbeschriftungen und die Grafik korrekt dargestellt. Nur tritt bei pcolor wieder das eingangs geschilderte Problem auf.
Es ist wirklich frustrierend und zerrt enorm an der Motivation ein Projekt zu weiterzuentwickeln. In der Regel versuche ich auch die Probleme selbst zu lösen oder im Internet danach zu suchen, bevor ich eine Forengemeinde nerve. Entweder bin ich auf einem Auge blind, oder das Problem ist prinzipieller Natur. Daher noch einmal die Bitte nach
Ideen?
PS: MatLab v7.10 (R2010a)
|
|
|
sddsmhr |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 25.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.01.2012, 07:49
Titel:
|
 |
"Renderoptionen" wäre die richtige Antwort gewesen. Nun... die 100 Punkte gehen heute wohl an mich.
Das Problem tritt offenbar genau dann auf, wenn die GUI mit OpenGL gerendert wird... Soweit konnte ich das Phänomen nun einkreisen. OpenGL hatte ich wohl mal in einer frühen Phase der Entwicklung aktiviert. Nun... mit zbuffer habe ich aber bisher keinerlei Probleme, weder mit pcolor noch imagesc, und in meinem Programm gibt es jetzt noch den extra Menüpunkt "Control->Graphics->Render Options".
(Status: Erledigt.)
|
|
|
|
|
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.
|
|