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

Plot von 20 Graphen in verschiedenen Farben möglich?

 

aribe

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.05.2009, 12:21     Titel: Plot von 20 Graphen in verschiedenen Farben möglich?
  Antworten mit Zitat      
Hallo ihr Matlab-Genies da draußen,

ich möchte ca. 20 Kurven gemeinsam in einem plot darstellen, was auch kein Problem darstellt.

Aber Matlab benutzt für Graphen ja lediglich die 7 Farben (c, m, y, r, g, b, k) und weiß und wiederholt diese dann, was dazu führt, dass mehrere meiner Graphen die gleiche Farbe haben. Aber Matlab ja in der Lage viel mehr Farben als nur diese 7 (+ weiß) darzustellen.

Meine Frage also: Gibt es eine Möglichkeit, alle 20 Graphen in unterschiedlichen Farben darzustellen, so dass man auf den ersten Blick in die Legende erkennen kann, welcher Graph zu welchen Werten gehört?

Danke schonmal für Eure Hilfe,

aribe


josekamara
Forum-Meister

Forum-Meister


Beiträge: 529
Anmeldedatum: 26.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 12.05.2009, 12:57     Titel:
  Antworten mit Zitat      
ich würde lieber noch dazu verschiedene linienarten (+,--,.....) benutzen.
_________________

Simulation
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 12.05.2009, 13:05     Titel:
  Antworten mit Zitat      
Mittels der RGB-Werte kannst du dir jede Farbe basteln.
Im plot Befehl kannst du sie über die Color-Option einstellen.

Code:

plot(x,y,'Color',[0.5 0.8 0.2]) % RGB-Werte müssen zwischen 0 und 1 liegen
 

_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
aribe

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.05.2009, 13:17     Titel:
  Antworten mit Zitat      
@josekamara
Ja, das mit den verschiedenen Linien hatte ich mir auch schon überlegt, aber Farben wären halt schon besser...

@Maddy:
Danke für den Tip, ich probier das gleich mal aus!
 
Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 21.01.2015, 14:31     Titel:
  Antworten mit Zitat      
Ich hol den Thread nochmal hoch.

Ich bin der Meinung dass es früher ging, mit hsv2rgb(["Farbwert" 1 1]) für jeden plot bzw. jede Linie eine andere Farbe zu finden. Jetzt möchte ich mit 2014a nach Möglichkeit mit verschiedensten Farben plotten, wobei jedoch vier davon nahe beieinander liegen sollen (gelbgrün-hellgelb-gelb-oranges gelb).

Nach den Versuchen sowohl mit Colormap als auch dem oben beschriebenen bekomme ich nicht mehr als 16 unterscheidbare Farben raus!
Kann das jemand bestätigen?
_________________

Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 21.01.2015, 15:01     Titel:
  Antworten mit Zitat      
Über die RGB-Werte kannst du doch jede Farbe darstellen. Wenn es ein Verlauf in Gelb sein soll, dann spielst du mit den Werten im Rot und Grün Kanal, wobei die "Mitte" quasi bei [1 1 0] liegt. Verstehe das Problem nicht so ganz? Das sich ähnliche Farben schwerer zu unterscheiden sind, ist natürlich klar.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 21.01.2015, 15:32     Titel:
  Antworten mit Zitat      
Bei mir wird eben nicht jede Farbe dargestelt. Ich denke der Ansatz über die Colormap sollte der sein, bei dem am meisten abgedeckt wird:

Ich hole mit also mit
Code:
eine Staffelung in RGB-Werten. Gehe ich jetzt diese Liste
Code:
col=CM(n, :)
durch, erkenne ich nur alle 16 Sprünge einen Farbwechsel. Der Plot erfolgt mit
Code:
plot(vektor, 'color', col);
Ich bin mir ziehmlich sicher, dass dazwischen alles gleich ist. Zur Sicherheit habe ich auch noch
Code:
gesetzt.
_________________

Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 21.01.2015, 15:45     Titel:
  Antworten mit Zitat      
Kannst du davon mal ein Bild machen?

Wenn ich folgenden Code ausführe, sehe ich einen stetigen Farbverlauf ohne Sprünge von rot zu blau.

Code:

figure(111)
x=1:10;
cm=jet(256);
colormap(cm);
for k=1:256;
plot(k*x, 'color', cm(k,:));
hold on;
end


Allerdings habe ich auch kein Matlab 2014a.

16 Farben deutet darauf hin, dass "Lines" (statt "jet") als colormap verwendet wird.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 21.01.2015, 16:02     Titel:
  Antworten mit Zitat      
Man wird zwar leicht kirre wegen der schrägen Streifen, aber ich denke, es verdeutlicht mein Problem schon

dunkelblau
blau
hellblau
[ein paar türkistöne]
grün
[ein paar gelbtöne]
[ein paar orangetöne]
rot
dunkelrot

Ok, in Türkis und Gelb/Orange habe ich nicht weiter gebohrt - ich bin die CM in festen Abständen von oben nach unten durchgegangen... Da könnte noch etwas mehr zu holen sein als 16 Farben, aber 256 sehe ich da absolut nicht.

Im blauen und roten wird schon gut deutlich, dass es sich da nicht um verschiedene Farben handelt.

untitled.png
 Beschreibung:

Download
 Dateiname:  untitled.png
 Dateigröße:  46.36 KB
 Heruntergeladen:  1177 mal
untitled.png
 Beschreibung:

Download
 Dateiname:  untitled.png
 Dateigröße:  46.36 KB
 Heruntergeladen:  1122 mal

_________________

Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
Private Nachricht senden Benutzer-Profile anzeigen
 
Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 21.01.2015, 16:11     Titel:
  Antworten mit Zitat      
Hier noch eine Vergößerung im Blauen, gemalt mit

plot(ones(256,1)*k, 'color', cm(k,Smile,'linewidth',5);

blau.png
 Beschreibung:

Download
 Dateiname:  blau.png
 Dateigröße:  6.02 KB
 Heruntergeladen:  939 mal

_________________

Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 21.01.2015, 16:17     Titel:
  Antworten mit Zitat      
Es sind 256 Schritte in dem Farbspektrum, die Unterscheidbarkeit leidet natürlich mit jeder Schrittzahlerhöhung.

Wenn andere colormaps wie "colorcube","hsv", etc. nicht helfen. Musst du wohl oder übel eine eigene Colormap erstellen die deinen Erfordernissen entspricht.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 22.01.2015, 09:57     Titel:
  Antworten mit Zitat      
Damit es nicht untergeht. Es haben sich bereits vorher viele Leute Gedanken über "unterscheidbare" Farben gemacht.

Vll hilft dieser Link:
http://www.mathworks.com/matlabcent.....ceptually-distinct-colors
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 22.01.2015, 10:08     Titel:
  Antworten mit Zitat      
Ah, toll!
Danke für den Link!

Ich bin mir nicht mehr ganz sicher, aber ich dachte dass früher, zu Zeiten von Matlab 6.X die Plots nach hold on; noch alle "von selbst" verschieden eingefärbt wurden...

[edit2] pmkmp ist ja total genial!

Das Tool von dir braucht leider die Imaging Processing Toolbox (und wenn nicht dann "colorspace", wo auch immer die her sein soll?).

Weiterhin habe ich ColorBand probiert, das war eher mau und auch bei varycolor werden diese bei pmkmp angesprochenen Sprünge (die aus der Beschreibung des RGB-Farbraumes kommen) wieder 1:1 umgesetzt - und in diesen Sprüngen liegen ja eben gut unterscheidbare Farben.
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 22.01.2015, 15:47     Titel:
  Antworten mit Zitat      
Statt "hold on" sollte "hold all" das von dir gewünschte Verhalten aufweisen.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 28.01.2015, 13:26     Titel:
  Antworten mit Zitat      
Danke nochmals!
Funktioniert immer noch - da habe ich wohl früher immer hold all; anstelle hold on; genutzt Wink
_________________

Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
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.