在Matplotlib中创建Colormap图例

时间:2010-03-15 23:47:27

标签: python matplotlib

我在matplotlib中使用imshow(),如下所示:

import numpy as np
import matplotlib.pyplot as plt
mat = '''SOME MATRIX'''
plt.imshow(mat, origin="lower", cmap='gray', interpolation='nearest')
plt.show()

如何添加一个图例,显示不同灰度的数值。可悲的是,我的谷歌搜索还没有找到答案:(

提前感谢您的帮助。

文斯

3 个答案:

答案 0 :(得分:31)

pyplot中有内置colorbar() function

答案 1 :(得分:17)

简单,只是plt.colorbar()

import numpy as np
import matplotlib.pyplot as plt
mat = np.random.random((10,10))
plt.imshow(mat, origin="lower", cmap='gray', interpolation='nearest')
plt.colorbar()
plt.show()

答案 2 :(得分:2)

像往常一样,我在问完后就明白了;)。对后人来说,这是我的抨击:

m = np.zeros((1,20))
for i in range(20):
    m[0,i] = (i*5)/100.0
print m
plt.imshow(m, cmap='gray', aspect=2)
plt.yticks(np.arange(0))
plt.xticks(np.arange(0,25,5), [0,25,50,75,100])
plt.show()

我确信存在更优雅的解决方案。

文斯