IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Echelle de couleur pour un tracé 3D


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Doctorant en aérodynamique
    Inscrit en
    Novembre 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Doctorant en aérodynamique

    Informations forums :
    Inscription : Novembre 2019
    Messages : 8
    Par défaut Echelle de couleur pour un tracé 3D
    Bonjour,

    Dans le cadre de l'étude de l'état de surface d'un matériau, j'ai obtenu suite à un scan une matrice de données de la forme suivante:

    .....YYYY
    ...X.ZZZZ
    ...X.ZZZZ
    ...X.ZZZZ
    ...X.ZZZZ

    Chaque point est donc désigné par ses coordonnées X-Y (coordonnées sur la "plan" du matériau) et sa hauteur Z. J'ai besoin de tracer ce nuage de points (NB: il y a des trous dans mon scan mais ce n'est pas un souci a priori), avec des couleurs en fonction de la hauteur, pour me permettre d'avoir une idée qualitative de cette surface.

    Suite à mon scan, j'obtiens mes vecteurs de coordonnées X et Y (Liste_X, Liste_Y) et les hauteurs Z dans la liste de liste Z_Redressee. je fais ensuite un plot avec le code ci-dessous. Le problème est qu'au lieu d'avoir une couleur qui dépend de la hauteur Z, j'ai une surface uniforme donc difficilement lisible. J'ai essayé pas mal de choses vues sur divers forum mais je n'obtiens jamais un résultat satisfaisant.

    Mon hypothèse est que ça pourrait venir des échelles (de l'ordre de 0.0002) mais j'ai essayé des modifications sans résultat. Je mets en pièce jointe une image du résultat. Savez-vous comment je pourrais améliorer ça?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Z_Redressee=np.array(Liste_Z_Redressee)
     
    Y,X=np.meshgrid(Liste_Y,Liste_X)
     
    fig2 = plt.figure(2)
    ax = fig2.add_subplot(1,1,1, projection='3d')
    surf = ax.plot_surface(Y, X, Z_Redressee, cmap=cm.coolwarm, linewidth=0)
     
    plt.savefig("cool_warm_sinus_land.png", bbox_inches='tight')
     
    plt.show()
    Nom : Figure_2.png
Affichages : 149
Taille : 73,0 Ko

    Merci d'avance,

  2. #2
    Membre Expert

    Homme Profil pro
    Ingénieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Par défaut
    Essaye en spécifiant des vmin et vmax en argument du plot_surface

  3. #3
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut


    Je crois qu'il s'agit du paramètre cmap = cm.coolwarm, voir dans l'exemple suivant : https://matplotlib.org/3.1.0/gallery...surface3d.html

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

Discussions similaires

  1. Réponses: 6
    Dernier message: 06/12/2005, 15h52
  2. Réponses: 8
    Dernier message: 17/05/2005, 18h08
  3. [TP] Besoin de couleurs pour raytracing
    Par Rniamo dans le forum Turbo Pascal
    Réponses: 6
    Dernier message: 07/04/2005, 18h06
  4. Couleur pour element d'une Checklistbox
    Par Chonchon dans le forum Composants VCL
    Réponses: 4
    Dernier message: 27/10/2004, 16h50
  5. String Grid et choix d'une couleur pour une ligne
    Par Gigottine dans le forum C++Builder
    Réponses: 12
    Dernier message: 17/05/2002, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo