掌握Matplotlib自定义颜色,让你的图表更出彩

发布时间:2025-06-08 10:00:02

在数据分析跟可视化范畴,Matplotlib 是一个功能富强的东西,它可能帮助我们创建各品种型的图表。图表的视觉后果不只取决于数据的浮现方法,还与图表的色彩设置密切相干。Matplotlib 供给了丰富的自定义色彩功能,使得我们可能根据须要调剂图表的色彩,从而晋升图表的美不雅度跟信息的传达效力。

一、Matplotlib 色彩基本

1. 色彩范例

Matplotlib 支撑多种色彩范例,包含:

  • 色彩称号:如 ‘red’, ‘green’, ‘blue’ 等。
  • RGB 色彩:如 (1, 0, 0) 表示白色,(0, 1, 0) 表示绿色,(0, 0, 1) 表示蓝色。
  • 十六进制色彩码:如 ‘#FF0000’ 表示白色,’#00FF00’ 表示绿色,’#0000FF’ 表示蓝色。
  • HSV 色彩空间:经由过程色彩 (Hue)、饱跟度 (Saturation) 跟亮度 (Value) 来定义色彩。

2. 预定义色彩

Matplotlib 内置了很多预定义的色彩,可能在画图时直接利用。比方:

import matplotlib.pyplot as plt

plt.plot([1, 2, 3, 4, 5], [2, 3, 5, 7, 11], color='red')
plt.show()

3. 自定义色彩

除了预定义的色彩,我们还可能经由过程以下方法自定义色彩:

import matplotlib.pyplot as plt

plt.plot([1, 2, 3, 4, 5], [2, 3, 5, 7, 11], color='#FF5733')
plt.show()

二、自定义色彩映射(Colormap)

色彩映射(Colormap)是将数据值映射到色彩空间的一种方法。Matplotlib 供给了多种色彩映射,我们可能根据须要抉择或自定义。

1. 内置色彩映射

Matplotlib 内置了很多色彩映射,如 ‘viridis’, ‘plasma’, ‘inferno’ 等。

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.scatter(x, y, c=y, cmap='viridis')
plt.colorbar()
plt.show()

2. 自定义色彩映射

我们可能经由过程 LinearSegmentedColormapListedColormap 创建自定义色彩映射。

from matplotlib.colors import LinearSegmentedColormap

colors = [(0, 0, 1), (1, 0, 0)]  # 蓝色到白色
cmap = LinearSegmentedColormap.from_list('bluetored', colors)

plt.imshow(np.random.rand(10, 10), cmap=cmap)
plt.colorbar()
plt.show()

三、自定义色彩栏(Colorbar)

色彩栏是图表顶用于展示色彩映射的条形图。我们可能经由过程设置 colorbar 参数来自定义色彩栏。

import matplotlib.pyplot as plt
import numpy as np

data = np.random.rand(10, 10)
plt.imshow(data, cmap='viridis')
plt.colorbar(cmap='viridis', label='Data value')
plt.show()

四、总结

Matplotlib 供给了丰富的自定义色彩功能,可能帮助我们创建愈加美不雅跟存在信息量的图表。经由过程控制这些功能,我们可能更好地展示数据,进步图表的可读性跟吸引力。