这似乎是这个问题的重复:
Set Colorbar Range in matplotlib
本质上,我想设置colorbar
范围来设置限制,例如0到2。当我使用vmin
和vmax
时,contourf
中的颜色范围是正确设置的,但colorbar只显示裁剪的范围,即链接中的解决方案在使用contourf
时似乎不起作用。我是否错过了一些明显的东西?
import numpy as np
import matplotlib.pyplot as plt
fld=np.random.rand(10,10)
img=plt.contourf(fld,20,cmap='coolwarm',vmin=0,vmax=2)
plt.colorbar(img)
导致
如何使用contourf
将颜色条范围强制为0到2?
1条答案
按热度按时间ac1kyiln1#
contourf
的工作方式确实与其他ScalarMappable
有点不同。如果您指定了级别数(在本例中为20),它将在最小和最大数据之间(大约)取这些级别。如果您希望n
级别在两个特定值vmin
和vmax
之间,则需要将这些级别提供给轮廓函数完整代码: