注意
转到末尾以下载完整示例代码。
命名颜色序列#
Matplotlib 的 ColorSequenceRegistry
允许通过名称访问预定义的颜色列表,例如 colors = matplotlib.color_sequences['Set1']
。此示例展示了所有内置颜色序列。
用户定义的序列可以通过 ColorSequenceRegistry.register
添加。
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
def plot_color_sequences(names, ax):
# Display each named color sequence horizontally on the supplied axes.
for n, name in enumerate(names):
colors = mpl.color_sequences[name]
n_colors = len(colors)
x = np.arange(n_colors)
y = np.full_like(x, n)
ax.scatter(x, y, facecolor=colors, edgecolor='dimgray', s=200, zorder=2)
ax.set_yticks(range(len(names)), labels=names)
ax.grid(visible=True, axis='y')
ax.yaxis.set_inverted(True)
ax.xaxis.set_visible(False)
ax.spines[:].set_visible(False)
ax.tick_params(left=False)
built_in_color_sequences = [
'tab10', 'tab20', 'tab20b', 'tab20c', 'Pastel1', 'Pastel2', 'Paired',
'Accent', 'Dark2', 'Set1', 'Set2', 'Set3', 'petroff10']
fig, ax = plt.subplots(figsize=(6.4, 9.6), layout='constrained')
plot_color_sequences(built_in_color_sequences, ax)
ax.set_title('Built In Color Sequences')
plt.show()
