如何在matplotlib中使用不同颜色映射在不同图中显示图像?
我想在不同的图形中用不同的颜色映射来显示图片。
下面的代码可以在两个不同的窗口中显示同一张图片,但使用的是相同的颜色映射。
import scipy.misc
from pylab import *
a = scipy.misc.imread('lena.jpg')
figure(1)
image = mean(a,axis=2)
imshow(image)
#if I call show() here then only one window is displayed
gray() #change the default colormap to gray
figure(2)
imshow(image)
show()
我在想有没有人能帮我一下。
非常感谢!
4 个回答
6
你可以使用 imgplot.set_cmap('gray')
这个命令来设置颜色。想了解更多,可以看看这个很棒的 教程。
9
要创建子图,可以使用 subplot
命令(注意哦!)
如果想要改变颜色图,可以使用 imshow
函数里的 cmap
参数。具体可以查看 文档。
figure() # You don't need to specify 1
subplot(121) # 121 is a shortcut for 1 line, 2 columns, item number 1
image = mean(a,axis=2)
imshow(image, cmap='gray')
subplot(122) # 1 line, 2 columns, item number 2
imshow(image, cmap='jet')
show()
7
你可以把 cmap
这个参数传给 imshow 函数。想了解更多,可以看看这个链接:http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.imshow