我使用下面的脚本用于绘图:如何与绝对值定义的颜色表与matplotlib
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import pylab as pl
import math
import matplotlib as mpl
from matplotlib.ticker import MultipleLocator
from matplotlib.colors import LinearSegmentedColormap
cdict1 = {'red': ((0.0, 1.0, 1.0),
(0.4, 1.0, 1.0),
(0.7, 0.0, 0.0),
(1.0, 0.0, 0.0)),
'green': ((0.0, 1.0, 1.0),
(0.1, 0.0, 0.0),
(1.0, 0.0, 0.0)),
'blue': ((0.0, 1.0, 1.0),
(0.1, 0.0, 0.0),
(0.4, 0.0, 0.0),
(1.0, 1.0, 1.0))
}
white_blue_red = LinearSegmentedColormap('WhiteBlueRed', cdict1)
plt.register_cmap(cmap=white_blue_red)
x = np.loadtxt('data.dat',
unpack=True)
plt.scatter(x[0], x[1], marker='.', s=3, linewidths=0, c=x[3], cmap= \
plt.get_cmap('WhiteBlueRed')) # plt.cm.bwr
plt.colorbar()
plt.show()
我已经定义的颜色映射使用相对值(函数1最大值的0最小值)。问题是我想使用该代码绘制数百个不同的文件,并且我希望每个绘图都具有完全相同的颜色映射。有没有可能用绝对值定义色彩映射?这将解决我的问题。