1
0

More than 1 year has passed since last update.

VSCode上でmatplotlibのimshow()で画像が表示できない時に確認したポイント

Posted at

前提

Windows 10において、VSCodeでJupyter Notebookを開いてデータを分析するケースを想定しています。
Python:3.10.9 (pyenv)
仮想環境:poetry

発生した現象

下記のように<Figure size 640x480 with 1 Axes>と表示され、画像が表示されないという現象です。
2023-03-03 151610.png

試したこと

1.こちらの記事を参考に、%maplotlib inlineを追加しましたが、解消せずでした。
https://qiita.com/umikazeken/items/57f82f69ed37a1d65110

2.こちらの2つの記事を参考に、matplotlib.use('TkAgg')を追加してみましたが、別ウィンドウが表示されたままPythonカーネルがフリーズする現象が起きてしまい、解消しませんでした。
https://qiita.com/bakanaouji/items/cac72da8d0a478766f0e
https://matplotlib.org/stable/users/explain/backends.html

3.次に問題の切り分けのために、VSCodeではなくJupyterLab上で当該ノートブックを開いてみたところ、画像は問題無く表示されていました。

解決方法

上記3.での切り分けの結果、VSCodeが怪しいということが分かりました。
色々と確認した結果、出力セルの左にある(1)「...」から(2)「プレゼンテーションの変更」を選択します。
presentation.png

そうすると、下記のようなパレットがVSCodeの上部に表示されます。ここで、image/pngのいずれかを選択することで、無事画像が表示されることを確認しました。
image.png

備考

どのようなきっかけで切り替わったのかは分かりませんが、ここ最近気になっていたので解決してすっきりしました。(何度か、仮想環境を作り直したりしていました・・・)
同じ現象に悩まされた場合は、上記を確認してみてください。それでは。

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0