Partage
  • Partager sur Facebook
  • Partager sur Twitter

Meshgrid et représentation 3D

    22 décembre 2016 à 13:50:12

    Salut ! Voici un petit code pour représenter en 3D des points dans l'espace à l'aide de 3 listes X, Y, Z.

    import matplotlib.pylab as plt
    from mpl_toolkits.mplot3d import Axes3D
    from matplotlib import cm
    
    
    X = [1,2,7,8,3,9,4,8,9,9,4,0,3,2,8,4,3,5,4,5,4,3]
    Y = [7,4,6,3,2,7,3,9,4,9,7,5,9,4,0,2,0,4,8,5,0,7]
    Z = [5,3,6,4,4,7,4,8,5,8,9,3,9,2,9,0,1,0,3,9,4,7]
    
    # Affichage 3D
    fig = plt.figure()
    axes = fig.add_subplot(111, projection="3d")
    
    # affiche le relief sous forme de points
    axes.scatter(X,Y,Z, c="r", marker="o")
    
    # affiche le relief sous forme de surface
    # axes.plot_trisurf(X,Y,Z, cmap=cm.jet, linewidth=0.1)
    
    axes.set_xlabel("X")
    axes.set_ylabel("Y")
    axes.set_zlabel("Z")
    
    plt.show()

    Je veux représenter une surface géographique en prenant un nuages de points sur Google Earth (oui c'est possible) et obtenir un maillage régulier à partir de ce nuage de points. Je me suis renseigné et je suis tombé sur la fonction meshgrid de numpy.

    Si j'utilise meshgrid j'en déduis que la représentation 3D se ferait selon une méthode différente que celle que j'utilise avec mes 3 listes X, Y et Z car meshgrid retourne un tableau de type array.

    Le problème est que je ne sais très bien utiliser meshgrid pour l'appliquer à un code semblable à celui ci-dessus. Pourriez-vous m'éclairer svp ?

    -
    Edité par poncinloic 22 décembre 2016 à 14:32:11

    • Partager sur Facebook
    • Partager sur Twitter

    Meshgrid et représentation 3D

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown