如何缩放pyplot颜色条以便在散点中看到对比度?

时间:2016-08-18 20:29:31

标签: python matplotlib colorbar

我正在制作包含xy值的散点图,以及我用来定义点颜色的z数组:

plt.scatter(x, y, c = z)

然而,max(z) ~ 110,但mean(z) ~ 20。因此,由于大多数z值大约或低于,但最大值大约为100,大多数点看起来都是深蓝色,很难区分。

我尝试使用日志颜色栏,但由于我的z范围几乎完全是10-100,所以几乎没有帮助:

color coded

有没有办法使用正常的色阶达到某个值?就像颜色条从{ - 1}}中的蓝色 - 红色开始,然后将上面的所有内容都变成红色?

2 个答案:

答案 0 :(得分:1)

试试这个:

plt.scatter(x, y, c = z, vmin=10, vmax=40)

答案 1 :(得分:1)

您可以将matplotlib颜色栏上的extend参数用作

plt.scatter(x, y, c = z, vmin=10, vmax=40)
plt.colorbar(extend="max")

有关详细示例,请检查this link