编程语言
首页 > 编程语言> > python – 将alpha添加到现有的matplotlib色彩映射表中

python – 将alpha添加到现有的matplotlib色彩映射表中

作者:互联网

我想要叠加几个hexbin图,但是使用内置颜色图只能看到最后一个.我不想重新构建色彩映射.如何在不事先知道色彩图的内部结构的情况下为色彩图添加线性alpha?

解决方法:

我不太确定这是否符合“不知道色彩图的内部结构”,但也许这样的东西可以用来为现有的色彩图添加线性alpha?

import numpy as np
import matplotlib.pylab as pl
from matplotlib.colors import ListedColormap

# Random data
data1 = np.random.random((4,4))

# Choose colormap
cmap = pl.cm.RdBu

# Get the colormap colors
my_cmap = cmap(np.arange(cmap.N))

# Set alpha
my_cmap[:,-1] = np.linspace(0, 1, cmap.N)

# Create new colormap
my_cmap = ListedColormap(my_cmap)

pl.figure()
pl.subplot(121)
pl.pcolormesh(data1, cmap=pl.cm.RdBu)
pl.colorbar()

pl.subplot(122)
pl.pcolormesh(data1, cmap=my_cmap)
pl.colorbar()

enter image description here

标签:python,matplotlib,colormap
来源: https://codeday.me/bug/20190926/1818521.html