[解決済み] Python / NumPyのmeshgridは何のためにあるのですか?
質問
の目的は何なのか、どなたか教えてください。
meshgrid
という関数があります。プロットするための座標のグリッドのようなものを作成するのは知っていますが、その直接的な利点がよくわかりません。
私はSebastian Raschkaから "Python Machine Learning" を学んでいますが、彼は決定境界をプロットするためにこれを使用しているようです。入力11を参照 こちら .
公式ドキュメントにあるこのコードも試してみましたが、やはり、出力は私にはあまり意味をなさないようです。
x = np.arange(-5, 5, 1)
y = np.arange(-5, 5, 1)
xx, yy = np.meshgrid(x, y, sparse=True)
z = np.sin(xx**2 + yy**2) / (xx**2 + yy**2)
h = plt.contourf(x,y,z)
できれば、実例もたくさん見せてください。
どのように解決するのですか?
の目的は
meshgrid
は、x 値の配列と y 値の配列から矩形のグリッドを作成するものです。
そこで、例えば、x方向、y方向ともに0から4の各整数値に点があるようなグリッドを作りたい場合。矩形のグリッドを作るには
x
と
y
ポイントになります。
これは25点になるんですよね?そこで、これらの点すべてについてxとyの配列を作りたい場合、次のようになります。 できる は次のようにします。
x[0,0] = 0 y[0,0] = 0
x[0,1] = 1 y[0,1] = 0
x[0,2] = 2 y[0,2] = 0
x[0,3] = 3 y[0,3] = 0
x[0,4] = 4 y[0,4] = 0
x[1,0] = 0 y[1,0] = 1
x[1,1] = 1 y[1,1] = 1
...
x[4,3] = 3 y[4,3] = 4
x[4,4] = 4 y[4,4] = 4
この場合、以下のようになります。
x
と
y
の行列があり,それぞれの行列の対応する要素の組が,格子点における点の x 座標と y 座標を与える.
x = 0 1 2 3 4 y = 0 0 0 0 0
0 1 2 3 4 1 1 1 1 1
0 1 2 3 4 2 2 2 2 2
0 1 2 3 4 3 3 3 3 3
0 1 2 3 4 4 4 4 4 4
そして、これらをプロットして、グリッドであることを確認することができます。
plt.plot(x,y, marker='.', color='k', linestyle='none')
明らかに、これは特に大きな範囲の
x
と
y
. 代わりに
meshgrid
を指定するだけで、実際にこれを生成することができます。
x
と
y
の値を指定します。
xvalues = np.array([0, 1, 2, 3, 4]);
yvalues = np.array([0, 1, 2, 3, 4]);
ここで
meshgrid
のように、自動的に前の出力が得られます。
xx, yy = np.meshgrid(xvalues, yvalues)
plt.plot(xx, yy, marker='.', color='k', linestyle='none')
このような長方形のグリッドを作成することは、さまざまな作業に役立ちます。あなたの投稿にある例では、単に関数のサンプルとして(
sin(x**2 + y**2) / (x**2 + y**2)
の値の範囲に亘る)
x
と
y
.
この関数は矩形グリッドでサンプリングされているので、関数を画像として視覚化することができます。
さらに、矩形グリッド上のデータを期待する関数に結果を渡すことができるようになりました (例.
contourf
)
関連
-
[解決済み】Django: ImproperlyConfigured: SECRET_KEY 設定は空であってはならない
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonのリストメソッドであるappendとextendの違いは何ですか?
-
[解決済み] 自分」という言葉は何のためにあるのか?
-
[解決済み】if __name__ == "__main__": は何をするのでしょうか?
-
[解決済み】__str__と__repr__の違いは何ですか?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python カメの描画コマンドとその例
-
PyQt5はユーザーログインGUIインターフェースとログイン後のジャンプを実装しています。
-
Pythonショートビデオクローラーチュートリアル
-
Python LeNetネットワークの説明とpytorchでの実装
-
[解決済み] [Solved] sklearn error ValueError: 入力に NaN、infinity または dtype('float64') に対して大きすぎる値が含まれている。
-
[解決済み】numpy: true_divide で無効な値に遭遇
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み】Pythonでgoogle APIのJSONコードを読み込むとエラーになる件
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない