Einzelnen Wert in einer colorbar ändern

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
Axel_S
User
Beiträge: 4
Registriert: Freitag 9. Februar 2018, 08:19

Freitag 10. August 2018, 16:58

Hallo,

ich habe eine Matrix mit Daten und plotte diese über

Code: Alles auswählen

plt.pcolor(H_vek,alpha,V_fehl_pro_rad, vmin = 0, vmax = 2)
cbar = plt.colorbar()
Ich kann mir dann auch z.B. über

Code: Alles auswählen

colmap = cm.get_cmap()
print(colmap(0.5))
die RGB Werte einzelner Farben ausgeben lassen.
Was ich nicht schaffe - aber gerne machen würde -, ist eine einzelne Farbe in dieser colorbar zu ändern. Wenn ich beispielsweise eine Skale von 0 bis 2 habe, möchte ich, dass die Farbe für 1 schwarz wird, wobei diese vorher grün oder sonstetwas war.

Ich bräuchte sowas wie

Code: Alles auswählen

set.colmap(0.5) = (0.1, 0.1, 0.1, 1)
Hintergrund ist, dass dieser Wert ein Grenzwert ist, den ich gerne besonders hervorheben will.

Kann mir da jemand helfen?

Vielen Dank und liebe Grüße,
Axel
Benutzeravatar
__blackjack__
User
Beiträge: 1040
Registriert: Samstag 2. Juni 2018, 10:21

Mittwoch 15. August 2018, 09:38

@Axel_S: So zuweisen geht allgemein nicht weil die Farben ja berechnet werden. Vielleicht kann man das mit `set_bad()` relativ einfach erreichen und dann die Werte die Du in einer besonderen Farbe haben möchtest auf diese Weise markieren.
“Capitalism is the astounding belief that the most wickedest of men will do the most wickedest of things for the greatest good of everyone.” – John Maynard Keynes
Antworten