我在使用 Matplotlib colorbar 时遇到了一些麻烦,也许我不理解文档(我不是以英语为母语的人)或其核心概念。
假设我有一个数据矩阵(形状,N*2)。我想制作这个数据的散点图,并添加一个基于标签列(N * 1)的配色方案,在浮点数中。我知道如何使用 colorbar 和 scalarmappable。
但是,我对此标签列中的一些枢轴值感兴趣,我希望将这些值呈现在颜色条的某个有趣位置。例如,标签值为 0,我想将它定位在 1/3 位置或中间——在我选择的颜色栏中,它可以是白色或灰色。
但是如果我理解正确的话,colorbar 只会从 [min, max] 中的原始数据中获取映射到 [0, 1] 中的数据数组。在这种情况下,我感兴趣的枢轴值最终会随机出现,除非我非常仔细地定义我的标准化函数。
所以要将我喜欢的白色作为我的枢轴值放在颜色条的中间,我必须定义标准化函数,它不仅可以标准化我的数据,而且还要使枢轴值位于 0.5 的位置。
对于我有限的 Matplotlib 经验,这是我知道的解决方案。
理想情况下,假设我有一列浮点数据,我可以选择一些枢轴值,并给它们一些特殊的位置。然后我将它们标准化并提供给颜色图。但是,颜色条可以为我之前定义的那些特殊位置设置特殊颜色。并获得一个带有正确刻度定位器和刻度标签的相应颜色条,指示我的特殊枢轴值。
我正在寻找一种更简单的方法(来自标准库),我可以使用它来实现这一点。