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

Colorbar bei SURF anpassen

 

rowJoe
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 25.11.12
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 17.05.2013, 09:10     Titel: Colorbar bei SURF anpassen
  Antworten mit Zitat      
Hallo zusammen,

ich bin auf der Suche nach einer Lösung für folgendes Problem:

Mit einer Schleife erstelle ich 3D Plots mit SURF und blende dabei auch die Colorbar ein. Entsprechend der Ausprägung der Messdaten erfolgt die Farbgebung. Ich betrachte in diesen Darstellungen nun relative Abweichungen von Nennmaßen. Damit die Grafiken untereinander vergleichbar sind, möchte ich folgendes in allen Grafiken festlegen: Bei keiner Abweichung (d.h. ist = soll), möchte ich immer grün vergeben. der blaue/grüne Bereich soll sich an den jeweiligen Messdaten der Grafik orientieren.

Leider bin ich dabei bisher zu keiner Lösung gekommen. Habt ihr Ideen?


Besten Gruß und bereits vielen Dank,

Jonas
Private Nachricht senden Benutzer-Profile anzeigen


Nras
Forum-Meister

Forum-Meister


Beiträge: 608
Anmeldedatum: 21.02.12
Wohnort: ---
Version: 7.12.0.635 (R2011a)
     Beitrag Verfasst am: 17.05.2013, 10:21     Titel:
  Antworten mit Zitat      
Hallo,

eventuell hilft das schon: mit caxix([unten, oben]) kannst du einen festen Wertebereich für die colorbar vorgeben. Wenn du nun relative Abweichungen betrachtest, könntest du vielleicht caxis([-1,1]). So sind alle Abweichungen mit derselben Farbe besetzt, nur manchmal kommen eben nicht alle Farben vor.

Je nach dem, ob ich dein Vorhaben richtig oder falsch verstanden habe, könntest du auch eher caxis([0, 1]) gebrauchten oder das entsprechend anpassen.

Viele Grüße,
Nras
Private Nachricht senden Benutzer-Profile anzeigen
 
rowJoe
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 25.11.12
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 17.05.2013, 10:51     Titel:
  Antworten mit Zitat      
Moin Nras,

danke für die schnelle Antwort. Ich habe es auch gleich mal ausprobiert... Das Ergebnis sieht du in den beiden Messungen unten.

Mein Vorhaben etwas deutlicher an einem Beispiel:
In Messung 1 und 2 sollte die 100 (Messergebnis entspricht 100% dem Soll) in der Colorbar grün sein. Die obere und untere Grenze (also min und max) sollen dabei entsprechend des kleinsten/größten Messergebnisses der Messreihe angepasst werden.

Da das erhaltene Ergebnis nicht ganz dem entspricht folgende Idee:
- Min/Max der Messreihe abfragen
- Die jeweils größte Differenz als obere/untere Grenze einsetzen

Was meinst du? Gehts noch einfacher? Werde das gleich mal ausprobieren...

Messung 2_neu.jpg
 Beschreibung:
Messung 2 mit neuem Colorbar-Setting

Download
 Dateiname:  Messung 2_neu.jpg
 Dateigröße:  32.42 KB
 Heruntergeladen:  569 mal
Messung 2.jpg
 Beschreibung:
Messung 2

Download
 Dateiname:  Messung 2.jpg
 Dateigröße:  35.2 KB
 Heruntergeladen:  550 mal
Messung 1_neu.jpg
 Beschreibung:
Messung 1 mit neuem Colorbar-Setting

Download
 Dateiname:  Messung 1_neu.jpg
 Dateigröße:  28.59 KB
 Heruntergeladen:  552 mal
Messung 1.jpg
 Beschreibung:
Messung 1

Download
 Dateiname:  Messung 1.jpg
 Dateigröße:  29.77 KB
 Heruntergeladen:  578 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Nras
Forum-Meister

Forum-Meister


Beiträge: 608
Anmeldedatum: 21.02.12
Wohnort: ---
Version: 7.12.0.635 (R2011a)
     Beitrag Verfasst am: 17.05.2013, 16:50     Titel:
  Antworten mit Zitat      
Hallo,

ich verstehe nicht genau, was du meinst. Aber wenn es einfach das Ziel ist, beim Wert 100 die Farbe grün zu haben, dann musst Du die Werte cmin und cmax eben um 100 zentrieren und den Bereich so groß wählen, wie die größte absolute Abweichung von 100 ist.

Wenn x die Messung ist, dann sollte wohl soetwas wie

Code:

max_abweichung = abs(min(100-x));
caxis([100-max_abweichung, 100+max_abweichung])
 

dir vielleicht helfen.

Viele Grüße
Nras,
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.