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

Matplotlibでimshow()画像を3Dでプロットする


imshow()をプロットするには Matplotlibの3D画像の場合、次の手順を実行できます-

  • xxを作成します およびyy numpyを使用したデータポイント。

  • データ(2D)を取得する X、Yを使用する およびZ

  • figure()を使用して、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします メソッド。

  • 'ax1'を追加します サブプロットの配置の一部として図に。

  • データを画像として表示します。つまり、データを含む2D通常のラスターに表示します。

  • 'ax2'を追加します サブプロットの配置の一部として図に。

  • 等高線または塗りつぶされた領域のセットを作成して保存します。

  • 図を表示するには、 show()を使用します メソッド。

import matplotlib.pyplot as plt
import numpy as np
from matplotlib import cm

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

xx, yy = np.meshgrid(np.linspace(0, 1, 10), np.linspace(0, 1, 10))

X = xx
Y = yy
Z = 10 * np.ones(X.shape)

data = np.cos(xx) * np.cos(xx) + np.sin(yy) * np.sin(yy)
fig = plt.figure()

ax1 = fig.add_subplot(121)
ax1.imshow(data, cmap="plasma", interpolation='nearest', origin='lower', extent=[0, 1, 0, 1])

ax2 = fig.add_subplot(122, projection='3d')
ax2.contourf(X, Y, data, 100, zdir='z', offset=0.5, cmap="plasma")

plt.show()

出力

Matplotlibでimshow()画像を3Dでプロットする


  1. NumpyとMatplotlibで画像セグメンテーションをオーバーレイします

    画像セグメンテーションをnumpyでオーバーレイするには、次の手順を実行できます- 10×10次元のマスクされた配列を作成します。 一部の領域では、マスクされた配列を1に更新します。 numpyを使用して画像データを作成します。 条件が満たされた配列をマスクして、マスクされたデータを取得します。 figure()を使用して、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします mrthod。 imshow()を使用する データを画像として、つまり2Dの通常のラスターに表示する方法。 図を表示するには、 show()を使用します メソッ

  2. Matplotlibグラフをフルスクリーンで画像化するために表示する

    matplotlibグラフをフルスクリーンで表示するには、 full_screen_toggle()を使用できます。 メソッド。 ステップ figure()を使用して、フィギュアを作成するか、既存のフィギュアをアクティブにします メソッド。 2つのリストを使用して線をプロットします。 現在のフィギュアのフィギュアマネージャーを返します。 フルスクリーン画像を切り替えるには、 full_screen_toggle()を使用します メソッド。 図を表示するには、show()メソッドを使用します。 例 from matplotlib import pyplot a