我试图用matplotlib的histogram2d绘制一些二维经验概率分布。我希望颜色在几个不同的情节中处于相同的比例,但即使我知道结果分布的全局上、下界,也找不到设定标度的方法。实际上,每个颜色标度都会从最小高度运行到直方图箱的最大高度,但是对于每个地块来说,这个范围是不同的。
一种可能的解决办法是强迫一个垃圾箱取我的下界高度,另一个是我的上界。甚至这似乎也不是一项非常直接的任务。
发布于 2015-03-24 15:54:23
通常,matplotlib中大多数事物的颜色缩放是由vmin和vmax关键字参数控制的。
您必须在字里行间略作阅读,但正如文档所提到的,hist2d中的附加kwargs将传递给pcolorfast。因此,您可以通过vmin和vmax kwargs指定颜色限制。
例如:
import numpy as np
import matplotlib.pyplot as plt
small_data = np.random.random((2, 10))
large_data = np.random.random((2, 100))
fig, axes = plt.subplots(ncols=2, figsize=(10, 5), sharex=True, sharey=True)
# For consistency's sake, we'll set the bins to be identical
bins = np.linspace(0, 1, 10)
axes[0].hist2d(*small_data, bins=bins, vmin=0, vmax=5)
axes[1].hist2d(*large_data, bins=bins, vmin=0, vmax=5)
plt.show()

https://stackoverflow.com/questions/29236907
复制相似问题