XLPack for Matplotlib Experimental Version 0.1
例題集
読み取り中…
検索中…
一致する文字列を見つけられません

三角格子上に表面プロットを描く.


Sub Test_Axs3d_Plot_trisurf()
    Const N_radii = 8, N_angles = 36, N = N_radii * N_angles + 1
    Dim Radii(N_radii - 1) As Double, Angles(N_angles - 1) As Double
    Dim X(N - 1) As Double, Y(N - 1) As Double, Z(N - 1) As Double
    Dim I As Long, J As Long, K As Long
    Dim Fig As Figure, Ax3 As Axs3d
    '-- Make data
    For I = 0 To N_radii - 1
        Radii(I) = (I + 1) * 0.125
    Next
    For I = 0 To N_angles - 1
        Angles(I) = I * (2 * Pi() / N_angles)
    Next
    For I = 0 To N_angles - 1
        For J = 0 To N_radii - 1
            K = J + I * N_radii + 1
            X(K) = Radii(J) * Cos(Angles(I))
            Y(K) = Radii(J) * Sin(Angles(I))
            Z(K) = Sin(-X(K) * Y(K))
        Next
    Next
    '-- Plot
    Set Fig = Plt.Figure()
    Set Ax3 = Fig.Add_subplot_3d()
    Call Ax3.Plot_trisurf(N, X(), Y(), Z(), "Blues")
    Call Plt.Show
End Sub