![]() |
XLPack for Matplotlib Experimental Version 0.1
例題集
|
3 次元のワイヤーフレームをプロットする.
Sub Test_Axs3d_Plot_wireframe()
Const A = -3, B = 3, Delta = 0.05
Dim Vx() As Double, Vy() As Double, X() As Double, Y() As Double
Dim Z() As Double, Z1 As Double, Z2 As Double
Dim N As Long, I As Long, J As Long
Dim Fig As Figure, Ax3 As Axs3d
'-- Make data
N = NARange(A, B, Delta)
ReDim Vx(N - 1), Vy(N - 1), X(N - 1, N - 1), Y(N - 1, N - 1), Z(N - 1, N - 1)
Call ARange(A, B, Delta, Vx())
Call ARange(A, B, Delta, Vy())
Call MeshGrid(N, N, Vx(), Vy(), X(), Y())
For I = 0 To N - 1
For J = 0 To N - 1
Z1 = Exp(-(X(I, J) ^ 2 + Y(I, J) ^ 2) / 2) / (2 * Pi())
Z2 = (Exp(-(((X(I, J) - 1) / 1.5) ^ 2 + ((Y(I, J) - 1) / 0.5) ^ 2) / 2) / (2 * Pi() * 0.5 * 1.5))
Z(I, J) = Z2 - Z1
Next
Next
'-- Plot
Set Fig = Plt.Figure()
Set Ax3 = Fig.Add_subplot_3d()
Call Ax3.Plot_wireframe(N, N, X(), Y(), Z(), "rstride=10, cstride=10")
Call Plt.Show
End Sub