Python 中的 matplotlib.colors.from_levels_和 _colors()
原文:https://www.geeksforgeeks.org/matplotlib-colors-from_levels_and_colors-in-python/
Matplotlib 是 Python 中一个惊人的可视化库,用于数组的 2D 图。Matplotlib 是一个多平台数据可视化库,构建在 NumPy 数组上,旨在与更广泛的 SciPy 堆栈一起工作。
matplotlib.colors.from_levels_and_colors()
matplotlib.colors.from_levels_and_colors()
函数是一个辅助函数,帮助创建 cmap 和 norm 实例,其行为类似于 contourf 的 levels 和 colors 参数。
语法:matplotlib.colors.from_levels_和 _colors(levels,colors,extend = ' none ')
参数:
- 级别:这是一个表示量化级别的数字序列,用于构建边界范数。如果 lev[k] < = v < lev[k+1],则值 v 被量化为等级 k。
- 颜色:它是一个颜色序列,用作每个级别的填充颜色。如果 extend 为“none ”,则必须有 n_level–1 种颜色。为“最小”或“最大”扩展添加一种额外的颜色,为“两者”扩展添加两种颜色。
- extend: 它是一个可选参数,接受四个值中的一个,即“one”、“min”、“max”或“both”。
返回类型:该函数返回一个归一化 cmap 和一个色图范数
例 1:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors
data1 = 3 * np.random.random((10, 10))
data2 = 5 * np.random.random((10, 10))
levels = [0, 1, 2, 3, 4, 5]
colors = ['red', 'brown',
'yellow', 'green',
'blue']
cmap, norm = matplotlib.colors.from_levels_and_colors(levels,
colors)
fig, axes = plt.subplots(ncols = 2)
for ax, dat in zip(axes, [data1, data2]):
im = ax.imshow(dat,
cmap = cmap,
norm = norm,
interpolation ='none')
fig.colorbar(im, ax = ax, orientation ='horizontal')
plt.show()
输出:
例 2:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import from_levels_and_colors
nvals = np.random.randint(2, 20)
data = np.random.randint(0, nvals,
(10, 10))
colors = np.random.random((nvals, 3))
# Make the colors pastels...
colors = colors / 2.5 + 0.55
levels = np.arange(nvals + 1) - 0.5
cmap, norm = from_levels_and_colors(levels,
colors)
fig, ax = plt.subplots()
im = ax.imshow(data,
interpolation ='nearest',
cmap = cmap,
norm = norm)
fig.colorbar(im, ticks = np.arange(nvals))
plt.show()
输出: