如何在 Matplotlib 中将调色板的子集提取为一个新的调色板?
若要将调色板的子集提取为一个新的调色板,我们可以采取以下步骤 −
创建一个 10×10 形状的随机数组。
向当前图形添加一个子图,其中 nrows=1、ncols=2 和 index=1。
使用 get_cmap 初始化,让散点知道。
使用带有调色板的 imshow() 方法,将数据显示为图像,即在 2D 规则栅格上,使用 data 和 colormap (步骤 1 和 3)。
向当前图形添加一个子图,其中 nrows=1、ncols=2 和 index=2。
从现有的调色板中提取调色板的子集(来自步骤 3)。
使用带有调色板的 imshow() 方法,将数据显示为图像,即在 2D 规则栅格上,使用数据和 colormap (步骤 1 和 6)。
若要显示图形,请使用 show() 方法。
示例
import numpy as np from matplotlib import pyplot as plt, colors import matplotlib plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True data = np.random.rand(10, 10) plt.subplot(121) cmap = matplotlib.cm.get_cmap('Paired_r', 10) plt.imshow(data, cmap=cmap) plt.subplot(122) new_cmap = colors.LinearSegmentedColormap.from_list(cmap.name, cmap.colors) plt.imshow(data, cmap=new_cmap) plt.show()
输出
广告