Matplotlibを使用すると、次の代数方程式を3Dでプロットするにはどうすればよいですか? 3面の交差を視覚化しますか?Matplotlibを使用して代数方程式をプロットする方法
答えて
式は、閉じた形でmatplotlibでプロットする必要があります。これは、その方程式の方が比較的簡単です。
2次元のメッシュグリッドを使用して、方程式に従って欠落した次元の値を計算することができます。さて、3次元すべての値を持つので、plot_surface
を使って面をプロットすることができます。
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
z1 = lambda x,y: 5./2.-x/2.+y/2. # x - y + 2z = 5
z2 = lambda x,y: y+1 # y - z = -1
z3 = lambda x,y: 3.*np.ones_like(x) # z = 3
x = np.arange(-3,3)
X,Y = np.meshgrid(x,x)
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.set_xlabel("x"); ax.set_ylabel("y"); ax.set_zlabel("z")
surf = ax.plot_surface(X, Y, z1(X,Y), color="C1", linewidth=0, shade=False)
surf = ax.plot_surface(X, Y, z2(X,Y), color="C2", linewidth=0, shade=False)
surf = ax.plot_surface(X, Y, z3(X,Y), color="C3", linewidth=0, shade=False)
plt.show()
面が真の3Dレンダリングされていないmatplotlibのが原因である、交差していないようです。
ありがとう!これはまさに私が探していたものです。本当の3Dレンダラではない理由は何ですか?私は彼らのギャラリーでより複雑な3Dの例を見る。 – Godekere
3Dプロットのアーティストは、単に2D空間に投影されます。これは、1人のアーティストが別のアーティストの前または後ろにあることを意味しますが、部分的に正面にも部分的にも後ろにはありません。これをmatplotlibで解決する唯一の方法は、視野角に応じて平面を2つのセクションに分割することです。 – ImportanceOfBeingErnest
%matplotlibノートブックで、すべてのplot_surface ....でalpha = 0.5を使用しています。 (X、Y、Z1(X、Y)、α= 0.5、rstride = 100、cstride = 100)、私は視野角を変えてJupyter Notebookの平面の交差を見ることができ、すべての平面はポイント – Godekere
- 1. ChartJSを使って方程式をプロットする方法は?
- 2. Matlabを使用して代数方程式を解く
- 3. matplotlibの(暗黙の)方程式の系をプロットする
- 4. 完全代数方程式
- 5. 線分代数方程式を解く
- 6. シンプロ方程式をプロットに使用する
- 7. Pythonで複数の変数を持つ方程式をプロットする方法は?
- 8. 暗黙の方程式をプロットする方法
- 9. 代数方程式のデータ構造は?
- 10. matplotlibを使って複素数(Argand Diagram)をプロットする方法
- 11. asp.netに数学方程式を入力して、オンラインテストでSQL Serverに方程式を保存する方法
- 12. 定数を変更して常微分方程式をプロットする
- 13. 熱方程式を使用したロードバランシング
- 14. Juliaの線形方程式/不等式をプロットする
- 15. Javacc/jjtreeを使用して方程式/式を簡略化
- 16. matplotlibの点の代わりにピクセルをプロットする方法は?
- 17. プロットの二次トレンド線方程式?
- 18. 二次方程式のプロット解答
- 19. MATLABの二次方程式のプロット解
- 20. RMarkDownを使用してプログラムで方程式を表示する
- 21. 方程式よりも未知数の方程式を解く
- 22. 二次方程式 - アセンブリを使用してスキャンする
- 23. matplotlibのみを使用して垂直散布をプロットする方法
- 24. matplotlibでPythonを使用して4dプロットを作成する方法
- 25. matplotlibを使用してpysparkのSQL結果をプロットする方法
- 26. matplotlibを使用して.txtファイルからデータをプロットする方法
- 27. イベントを使用して外部変数を方程式に入力する
- 28. mathematicaを使って微分方程式の定数を求める方法
- 29. matplotlibを使って2Dグラデーション(虹)をプロットする方法は?
- 30. matplotlibを使って3dガウス分布をプロットする方法
* matplotlib * not * mat ** h ** plotlib * - 数学関数をプロットしないことを意味します。それらをプロットするには、(x、y、z)ペアの離散値を計算する必要があります。あるいは、あなたが達成したいものに近いかもしれない[sympyの作図モジュール](http://docs.sympy.org/dev/modules/plotting.html)を見てください。 – kazemakase
私はいつもmatplotlibがmat ** h ** ematical plotting libraryの略であると考えました。 – ImportanceOfBeingErnest
@ImportanceOfBeingErnest明確にするために、OPはもともとhでmatplotlibを綴っていました。むしろMatlabにちなんで名づけられたと思っていました。これはMatlabの略です。 – kazemakase