Ich habe ein einfaches Problem, aber ich kann keine gute Lösung dafür finden.
Ich möchte ein NumPy 2D-Array, das ein Graustufenbild darstellt, in ein RGB-PIL-Bild konvertieren, während ich einige der Matplotlib-Farbkarten anwende.
Ich kann eine vernünftige PNG-Ausgabe erhalten, indem ich den folgenden pyplot.figure.figimage
Befehl verwende:
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')
Obwohl ich dies anpassen könnte, um das zu bekommen, was ich will (wahrscheinlich bekomme ich mit StringIO das PIL-Bild), frage ich mich, ob es keinen einfacheren Weg gibt, dies zu tun, da es ein sehr natürliches Problem der Bildvisualisierung zu sein scheint. Sagen wir so etwas:
colored_PIL_image = magic_function(array, cmap)