webentwicklung-frage-antwort-db.com.de

Festlegen der Standard-Colormap in Matplotlib

Insbesondere beim Arbeiten mit Graustufenbildern ist es mühsam, die Farbzuordnung für jeden imshow-Befehl als imshow(i, cmap='gray') festzulegen. Wie kann ich die Standard-Farbzuordnung festlegen, die Matplotlib für Graustufen oder andere Farbzuordnungen verwendet?

16
Jarno

Um die Standard-Farbzuordnung nur für die aktuelle interaktive Sitzung oder ein Skript zu verwenden, verwenden Sie diese Option 

import matplotlib as mpl
mpl.rc('image', cmap='gray')

Für Versionen von matplotlib vor 2.0 müssen Sie das RcParams-Diktat verwenden. Dies funktioniert immer noch in neueren Versionen.

import matplotlib.pyplot as plt
plt.rcParams['image.cmap'] = 'gray'

Um die Standard-Colormap dauerhaft zu ändern, bearbeiten Sie die matplotlibrc-Konfigurationsdatei und fügen Sie die Zeile image.cmap: gray hinzu. Ersetzen Sie den Wert grau durch eine andere gültige Colormap, die Ihren Anforderungen entspricht. .__ Die Konfigurationsdatei sollte sich unter ~/.config/matplotlib/matplotlibrc befinden, Sie können jedoch den genauen Speicherort mit ermitteln

mpl.matplotlib_fname()

Dies ist besonders nützlich, wenn Sie mehrere Matplotlib-Versionen in verschiedenen virtuellen Umgebungen haben.

Siehe auch http://txt.arboreus.com/2014/10/21/how-to-set-default-colormap-in-matplotlib.html Und allgemeine Konfiguration von Matplotlib http: //matplotlib.org/users/customizing.html

23
Jarno

Sie können entweder tun,

plt.set_cmap('jet')

oder

plt.rcParams['image.cmap']='jet'

Beachten Sie jedoch, dass dieser Standardwert ignoriert wird, wenn Sie in einer der APIs einen Wert für den Parameter color übergeben. In diesem Fall sollten Sie Folgendes tun:

color = plt.cm.hsv(r) # r is 0 to 1 inclusive
line = matplotlib.lines.Line2D(xdata, ydata, color=color)
0
Shital Shah