最佳答案
我有一个简单的问题,但我找不到一个好的解决办法。
我想取一个NumPy 2D数组,它表示灰度图像,并将其转换为RGB PIL图像,同时应用一些matplotlib颜色地图。
我可以通过使用pyplot.figure.figimage
命令得到一个合理的PNG输出:
dpi = 100.0
w, h = myarray.shape[1]/dpi, myarray.shape[0]/dpi
fig = plt.figure(figsize=(w,h), dpi=dpi)
fig.figimage(sub, cmap=cm.gist_earth)
plt.savefig('out.png')
虽然我可以调整这个来得到我想要的(可能使用StringIO来获得PIL图像),但我想知道是否有更简单的方法来做到这一点,因为这似乎是一个非常自然的图像可视化问题。让我们这样说吧:
colored_PIL_image = magic_function(array, cmap)