Seite 1 von 1

Colormap auf Null zentrieren

Verfasst: Dienstag 30. Juli 2013, 20:06
von Grizzly
Hallo,

ich hätte gerne das weiße meiner Colormap um den Wert Null. Ich habe schon mit vmin und vmax herumgespielt, schaffe es aber (noch) nicht den Wert -7 auf rot, Wert 0 auf weiß und Wert 1 auf blau zu setzen...

Ist das überhaupt möglich, ohne eine custom Colormap zu definieren ?

Code: Alles auswählen

import numpy as np
import matplotlib.pyplot as plt

# some data
x = np.array([[0,0,0,0,0],[0,1,1,1,0],[0,-4,-7,-4,0],[0,1,1,1,0],[0,0,0,0,0]])

fig = plt.figure()
ax = plt.imshow(x)
ax.set_cmap('seismic_r')
plt.colorbar(ax)
plt.show()


Re: Colormap auf Null zentrieren

Verfasst: Samstag 3. August 2013, 08:39
von Grizzly
Hat wirklich niemand eine Idee ?

Re: Colormap auf Null zentrieren

Verfasst: Samstag 3. August 2013, 09:09
von gkuhl
Hallo Grizzly,

reicht dir folgendes:

Code: Alles auswählen

imshow(x, vmin=-7, vmax=7, cmap='seismic_r')
Zu eigenen `colormaps`: http://matplotlib.org/examples/pylab_ex ... _cmap.html

Grüße
Gerrit

Re: Colormap auf Null zentrieren

Verfasst: Montag 5. August 2013, 07:38
von Grizzly
Hallo,

ich dachte es gibt einen leichteren Weg die colormap an die Daten anzupassen. Mit vmin=-7 und vmax=7 kann ich die cm zwar auf 0 zentrieren, aber falls meine Daten nur von -7 bis +1 gehen verliert man die blaue Bandbreite im Positivem... (welche ich gerne hätte)

Also muss ich mir doch eine eigene cm zusammenstellen...
Vielen dank für die Hilfe.

Schöne Grüße,
Grizzly