import matplotlib.pyplot as plt
import matplotlib as mpl
fig, ax = plt.subplots(figsize=(6, 1))
fig.subplots_adjust(bottom=0.5)
cmap = mpl.cm.cool
norm = mpl.colors.Normalize(vmin=5, vmax=10)
cb1 = mpl.colorbar.ColorbarBase(ax, cmap=cmap,
norm=norm,
orientation='horizontal')
cb1.set_label('Some Units')
fig.show()
离散间隔颜色条
第二个示例说明了 ListedColormap
从一组列出的颜色生成颜色映射, colors.BoundaryNorm()
它基于离散的间隔和扩展的端点生成一个颜色映射索引,以显示“过”和“欠”值颜色。over和under用于显示规范化之外的数据 [0,1] 范围。在这里,我们将颜色作为灰色阴影传递,作为编码0-1范围内的浮点的字符串。
如果A ListedColormap
如果使用,则边界数组的长度必须大于颜色列表的长度。边界必须单调递增。
这一次,除了前面的参数外,我们还传递了更多的参数 ColorbarBase
. 要在颜色栏上显示超出范围的值,必须使用 延伸 关键字参数。使用 延伸 ,必须指定两个额外的边界。最后,spacing参数确保间隔按比例显示在颜色栏上。
fig, ax = plt.subplots(figsize=(6, 1))
fig.subplots_adjust(bottom=0.5)
cmap = mpl.colors.ListedColormap(['red', 'green', 'blue', 'cyan'])
cmap.set_over('0.25')
cmap.set_under('0.75')
bounds = [1, 2, 4, 7, 8]
norm = mpl.colors.BoundaryNorm(bounds, cmap.N)
cb2 = mpl.colorbar.ColorbarBase(ax, cmap=cmap,
norm=norm,
boundaries=[0] + bounds + [13],
extend='both',
ticks=bounds,
spacing='proportional',
orientation='horizontal')
cb2.set_label('Discrete intervals, some other units')
fig.show()
带自定义扩展长度的颜色条
在这里,我们将演示自定义长度的颜色条扩展的用法,该扩展用于具有离散间隔的颜色条。要使每个延伸部分的长度与内饰颜色的长度相同,请使用 extendfrac='auto'
.
fig, ax = plt.subplots(figsize=(6, 1))
fig.subplots_adjust(bottom=0.5)
cmap = mpl.colors.ListedColormap(['royalblue', 'cyan',
'yellow', 'orange'])
cmap.set_over('red')
cmap.set_under('blue')
bounds = [-1.0, -0.5, 0.0, 0.5, 1.0]
norm = mpl.colors.BoundaryNorm(bounds, cmap.N)
cb3 = mpl.colorbar.ColorbarBase(ax, cmap=cmap,
norm=norm,
boundaries=[-10] + bounds + [10],
extend='both',
extendfrac='auto',
ticks=bounds,
spacing='uniform',
orientation='horizontal')
cb3.set_label('Custom extension lengths, some other units')
fig.show()
Last updated on Dec 17, 2019.
Created using
Sphinx 1.8.5.
Doc version v3.1.1-75-g4a56626f5.