Surtout lorsque vous travaillez avec des images en niveaux de gris, il est fastidieux de définir la palette de couleurs pour chaque commande imshow
sur imshow(i, cmap='gray')
. Comment définir la carte de couleurs par défaut utilisée par matplotlib en niveaux de gris ou toute autre palette de couleurs?
Pour modifier la palette de couleurs par défaut uniquement pour la session interactive en cours ou un script, utilisez
import matplotlib as mpl
mpl.rc('image', cmap='gray')
Pour les versions de matplotlib
antérieures à 2.0, vous devez utiliser le dict de rcParams. Cela fonctionne toujours dans les versions les plus récentes.
import matplotlib.pyplot as plt
plt.rcParams['image.cmap'] = 'gray'
Pour modifier la palette de couleurs par défaut, éditez définitivement le fichier de configuration matplotlibrc et ajoutez la ligne image.cmap: gray
. Remplacez la valeur grey par une autre table de couleurs valide en fonction de vos besoins. Le fichier de configuration devrait être à ~/.config/matplotlib/matplotlibrc
, mais vous pouvez trouver l’emplacement exact avec
mpl.matplotlib_fname()
Ceci est particulièrement utile si vous avez plusieurs versions de matplotlib dans différents environnements virtuels.
Voir aussi http://txt.arboreus.com/2014/10/21/how-to-set-default-colormap-in-matplotlib.html Et la configuration générale de Matplotlib http: //matplotlib.org/users/customizing.html
Vous pouvez faire soit,
plt.set_cmap('jet')
ou
plt.rcParams['image.cmap']='jet'
Toutefois, notez que si vous transmettez une valeur pour le paramètre color
dans l'une des API, cette valeur par défaut sera ignorée. Dans ce cas, vous devriez faire quelque chose comme ceci:
color = plt.cm.hsv(r) # r is 0 to 1 inclusive
line = matplotlib.lines.Line2D(xdata, ydata, color=color)