Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Matplotlib中设置默认颜色映射_Python_Matplotlib_Color Mapping - Fatal编程技术网

Python 如何在Matplotlib中设置默认颜色映射

Python 如何在Matplotlib中设置默认颜色映射,python,matplotlib,color-mapping,Python,Matplotlib,Color Mapping,尤其是在处理灰度图像时,将每个imshow命令的颜色映射设置为imshow(i,cmap='gray')非常繁琐。如何将matplotlib使用的默认颜色映射设置为灰度或任何其他颜色映射?仅为当前交互式会话或一个脚本使用更改默认颜色映射 import matplotlib as mpl mpl.rc('image', cmap='gray') 对于2.0之前的matplotlib版本,必须使用rcParams dict。这在较新版本中仍然有效 import matplotlib.pyplot

尤其是在处理灰度图像时,将每个
imshow
命令的颜色映射设置为
imshow(i,cmap='gray')
非常繁琐。如何将matplotlib使用的默认颜色映射设置为灰度或任何其他颜色映射?

仅为当前交互式会话或一个脚本使用更改默认颜色映射

import matplotlib as mpl
mpl.rc('image', cmap='gray')
对于2.0之前的
matplotlib
版本,必须使用rcParams dict。这在较新版本中仍然有效

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

要永久更改默认颜色映射,请编辑matplotlibrc配置文件并添加行
image.cmap:gray
。 根据您的需要,使用任何其他有效的颜色映射替换灰色值。 配置文件应位于
~/.config/matplotlib/matplotlibrc
,但您可以使用

mpl.matplotlib_fname()
如果在不同的虚拟环境中有多个matplotlib版本,这一点尤其有用

另见 对于Matplotlib的常规配置,您可以执行以下操作之一:

plt.set_cmap('jet')

但是请注意,如果在任何API中传递
color
参数的值,则此默认值将被忽略。在这种情况下,您应该这样做:

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