Python 自定义索引颜色栏

Python 自定义索引颜色栏,python,matplotlib,colormap,Python,Matplotlib,Colormap,我有一个颜色映射代码,正在工作,我的问题是,我希望颜色栏介于0和7.0之间,即最小值和最大值,但只能获得0和4.0 你能帮我吗 Ak = 0.918*(tabla['H']-tabla['mag4_5']-0.08) ext = plt.figure(1) plt.hexbin(x, y, Ak, cmap=plt.cm.RdPu) plt.axis([xmin, xmax, ymin, ymax]) plt.title(u"Mapa de extinción") A = np.arange(0

我有一个颜色映射代码,正在工作,我的问题是,我希望颜色栏介于0和7.0之间,即最小值和最大值,但只能获得0和4.0

你能帮我吗

Ak = 0.918*(tabla['H']-tabla['mag4_5']-0.08)
ext = plt.figure(1)
plt.hexbin(x, y, Ak, cmap=plt.cm.RdPu)
plt.axis([xmin, xmax, ymin, ymax])
plt.title(u"Mapa de extinción")
A = np.arange(0.0, 7.0, 0.5)
Ak = plt.colorbar(ticks=A)
Ak.set_label(r"A$_k$")
plt.savefig('plotAk.png')

我猜传入hexbin函数的AK的范围是0~4。y可以设置

A = np.arange(min(AK), max(AK), (max(AK)-min(AK))/20)
以20个刻度显示颜色栏中的颜色范围

y还可以通过以下方式将AK范围放大到0~7:

AK = (AK - min(AK))*7.0/(max(AK)-min(AK))
然后将AK传递给hexbin函数

放大(我自己的数据)之前:

放大后:


嗨!!我现在也需要这样做,但是要用方形的垃圾箱。你有主意吗?