如何在 Matplotlib 中设置默认颜色图
How to set default colormap in Matplotlib
特别是在处理灰度图像时,将每个 imshow
命令的颜色映射设置为 imshow(i, cmap='gray')
是乏味的。如何将 matplotlib 使用的默认颜色图设置为灰度或任何其他颜色图?
要仅为当前交互式会话或一个脚本更改默认颜色图,请使用
import matplotlib as mpl
mpl.rc('image', cmap='gray')
对于 2.0 之前的 matplotlib
版本,您必须使用 rcParams 字典。这在较新的版本中仍然有效。
import matplotlib.pyplot as plt
plt.rcParams['image.cmap'] = 'gray'
要永久更改默认颜色图,请编辑 matplotlibrc 配置文件并添加行 image.cmap: gray
。
根据您的需要将值 gray 替换为任何其他有效的颜色图。
配置文件应该在 ~/.config/matplotlib/matplotlibrc
,但你可以通过
找到确切的位置
mpl.matplotlib_fname()
如果您在不同的虚拟环境中有多个 matplotlib 版本,这将特别有用。
另见 http://txt.arboreus.com/2014/10/21/how-to-set-default-colormap-in-matplotlib.html
以及 Matplotlib 的一般配置 http://matplotlib.org/users/customizing.html
你可以做任何一个,
plt.set_cmap('jet')
或
plt.rcParams['image.cmap']='jet'
但是请注意,如果您在任何 API 中为 color
参数传递值,则此默认值将被忽略。在那种情况下,你应该这样做:
color = plt.cm.hsv(r) # r is 0 to 1 inclusive
line = matplotlib.lines.Line2D(xdata, ydata, color=color)
特别是在处理灰度图像时,将每个 imshow
命令的颜色映射设置为 imshow(i, cmap='gray')
是乏味的。如何将 matplotlib 使用的默认颜色图设置为灰度或任何其他颜色图?
要仅为当前交互式会话或一个脚本更改默认颜色图,请使用
import matplotlib as mpl
mpl.rc('image', cmap='gray')
对于 2.0 之前的 matplotlib
版本,您必须使用 rcParams 字典。这在较新的版本中仍然有效。
import matplotlib.pyplot as plt
plt.rcParams['image.cmap'] = 'gray'
要永久更改默认颜色图,请编辑 matplotlibrc 配置文件并添加行 image.cmap: gray
。
根据您的需要将值 gray 替换为任何其他有效的颜色图。
配置文件应该在 ~/.config/matplotlib/matplotlibrc
,但你可以通过
mpl.matplotlib_fname()
如果您在不同的虚拟环境中有多个 matplotlib 版本,这将特别有用。
另见 http://txt.arboreus.com/2014/10/21/how-to-set-default-colormap-in-matplotlib.html 以及 Matplotlib 的一般配置 http://matplotlib.org/users/customizing.html
你可以做任何一个,
plt.set_cmap('jet')
或
plt.rcParams['image.cmap']='jet'
但是请注意,如果您在任何 API 中为 color
参数传递值,则此默认值将被忽略。在那种情况下,你应该这样做:
color = plt.cm.hsv(r) # r is 0 to 1 inclusive
line = matplotlib.lines.Line2D(xdata, ydata, color=color)