I am Charmie

メモとログ

plotly.express.imshow on Google Colaboratoryの落とし穴

はまったのでメモ

plotly.express.imshowにカラー画像(3次元配列)を与えると以下のようなエラーを表示した.

/usr/local/lib/python3.7/dist-packages/PIL/Image.py in save(self, fp, format, **params)
   2121         expand=0,
   2122         center=None,
-> 2123         translate=None,
   2124         fillcolor=None,
   2125     ):

KeyError: 'PNG'

2次元配列を与えたらちゃんと表示された. 根本的な解決策は謎なので,カラー画像を表示したいときにどうすればいいかわからない.

import numpy as np
import plotly.express as px


image = np.random.rand(120, 160, 3)
# fig = px.imshow(image)  # KeyError: 'PNG'のエラーメッセージが出ちゃう
fig = px.imshow(image[..., 0])
fig.show()