作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我使用 matplotlib 在 python 中绘制一些数据,并且这些绘图需要标准颜色条。数据由一系列包含频率信息的 NxM 矩阵组成,因此简单的 imshow() 图给出了带有颜色描述频率的 2D 直方图。每个矩阵包含不同但重叠范围的数据。 Imshow 将每个矩阵中的数据标准化为 0-1 范围,这意味着,例如,矩阵 A 的图将与矩阵 2*A 的图相同(尽管颜色条将显示两倍的值)。例如,我想要的是红色对应于所有图中的相同频率。换句话说,一个颜色条就足以满足所有图的需求。任何建议将不胜感激。
最佳答案
不是偷@ianilis 的答案,但我想添加一个例子......
有多种方法,但最简单的就是将 vmin
和 vmax
kwargs 指定给 imshow
。或者,您可以创建一个 matplotlib.cm.Colormap
实例并指定它,但对于简单的情况,这比必要的要复杂。
这是一个简单的示例,所有图像都有一个颜色条:
import numpy as np
import matplotlib.pyplot as plt
# Generate some data that where each slice has a different range
# (The overall range is from 0 to 2)
data = np.random.random((4,10,10))
data *= np.array([0.5, 1.0, 1.5, 2.0])[:,None,None]
# Plot each slice as an independent subplot
fig, axes = plt.subplots(nrows=2, ncols=2)
for dat, ax in zip(data, axes.flat):
# The vmin and vmax arguments specify the color limits
im = ax.imshow(dat, vmin=0, vmax=2)
# Make an axis for the colorbar on the right side
cax = fig.add_axes([0.9, 0.1, 0.03, 0.8])
fig.colorbar(im, cax=cax)
plt.show()
关于python - 如何为python中的一系列图创建标准颜色条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7875688/
我是一名优秀的程序员,十分优秀!