Python
 Computer >> コンピューター >  >> プログラミング >> Python

Jupyter NotebookでNumPyの2D配列をグレースケール画像として表示する方法

Jupyter Notebook上でNumPyの2次元配列をグレースケール画像として表示したい場合、Matplotlibのimshow()関数を使うのが最も簡単な方法です。ここでは、具体的な手順とサンプルコードを紹介します。

手順

  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。

  • NumPyを使ってランダムなデータを作成します。

  • imshow()メソッドを使用し、カラーマップにgrayを指定してデータを画像として表示します。

  • show()メソッドを呼び出して、図を画面に表示します。

サンプルコード

from matplotlib import pyplot as plt
import numpy as np

# 図のサイズを設定
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# ランダムなデータポイントを生成
data = np.random.rand(5, 5)

# grayカラーマップを指定してimshowで描画
plt.imshow(data, cmap='gray')

# グラフを表示
plt.show()

実行結果

このコードを実行すると、以下のような5×5のグレースケール画像が出力されます。各セルの明るさは、配列内の0から1までのランダムな値に対応しています。

Jupyter NotebookでNumPyの2D配列をグレースケール画像として表示する方法

補足:カラーマップについて

cmap='gray'を指定することで、値が小さいほど黒に近く、大きいほど白に近い濃淡で表現されます。他にも'viridis''hot'など様々なカラーマップが利用可能ですが、画像処理や機械学習の分野ではグレースケール表示がよく使われます。また、実際の画像データ(PILやOpenCVで読み込んだもの)を2D配列として扱う場合も、同じ方法でグレースケール表示できます。

  1. NumPyの3次元配列からMatplotlibで3Dプロットを作成する方法

    NumPyで作成した3次元配列からMatplotlibを使って3Dプロットを描画するには、まずnumpyで3次元配列を生成し、そこからx・y・z座標のデータを抽出します。以下の手順に従って実装できます。figure()メソッドを使用して、新しい図を作成するか、既存の図をアクティブにします。add_subplot()メソッドを使用して、サブプロット配置の一部として図に~.axes.Axes(3D軸)を追加します。size=(3, 3, 3)のランダムデータを生成します。3次元配列からx、y、zのデータを抽出します。作成した軸上に3D散布図をプロットします。図を表示するには、show()メソッドを

  2. Matplotlibのグラフをフルスクリーンで表示する方法

    Matplotlibで作成したグラフをフルスクリーン(全画面)で表示したい場合、full_screen_toggle()メソッドを使用すると簡単に実現できます。このメソッドは、現在開いているフィギュアウィンドウを全画面モードに切り替える機能を持ちます。 手順 figure()メソッドを使って、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします。 2つのリストを渡してplot()メソッドを呼び出し、折れ線グラフを描画します。 get_current_fig_manager()メソッドで、現在のフィギュアのマネージャー(figure manager)を取得します。 取得したマネー