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

Calcul scientifique Python Discussion :

Récupération de données et librairie matplotlib


Sujet :

Calcul scientifique Python

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Récupération de données et librairie matplotlib
    Bonsoir !

    Je viens en aide à une amie qui doit modéliser des données sous forme graphique 3D par python. Les données sont extraites d'un fichier data de cette forme :

    #vecteur1
    #x y z
    1 1 0
    2 2 0
    3 3 0
    4 4 0
    5 5 0

    #vecteur2
    #x y z
    1 1 1
    2 2 1
    3 3 1
    4 4 1
    5 5 1

    #vecteur3
    #x y z
    1 1 2
    2 2 2
    3 3 2
    4 4 2
    5 5 2

    J'ai deux questions :

    Une concernant la récupération des données en passant par un split :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    for line in lines:
        col1, col2, col3 = line.split()
        x.append(int(col1))
        y.append(int(col2))
        z.append(int(col3))
    Ce code d'essai me permet de récupérer les données des trois colonnes mais comment puis-je spliter mes 3 vecteurs dans 3 tableaux/arrays différents ?

    Ensuite, je n'arrive pas à trouver la méthode de la librairie matplotlib permettant de régler la taille du graphe (x,y,z...), j'ai zieuté a doc et les exemple sans succés..comment fait on ? ^^

    En vous remerciant =)
    (soyez indulgent, chui pas un grand spécialiste de python !)

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    aaaAAAAA, c'est bon j'ai trouvé pour la taille !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ax.set_xlim(0, 5)
    ax.set_ylim(0, 5)
    ax.set_zlim(0, 5)
    Sinon je recherche toujours pour les vecteurs à splitter =)

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Salut,

    Tu dois retrouver ceci en finale ?

    vecteurs = [[vecteur1], [vecteur2], [vecteur3]]

    sachant que:

    vecteur1 = [[x], [y], [z]]
    vecteur2 = [[x], [y], [z]]
    vecteur3 = [[x], [y], [z]]

    sachant que:

    x = [1, 2, 3, 4, 5]
    y = [1, 2, 3, 4, 5]
    z = [... ]

    Si c'est cela, moi, je créerai une liste vecteurs et dans une boucle du nombre de vecteurs attendu je recréerai autant de sous listes avec à chaque fois un appel aux données du fichier.

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    vecteurs = []
     
    def get_values():
        # je simplifie ici, toi tu lis un fichier
        lines = [['1 1 0', '2 2 0', '3 3 0', '4 4 0', '5 5 0'],
                ['1 1 1', '2 2 1', '3 3 1', '4 4 1', '5 5 1'],
                ['1 1 2', '2 2 2', '3 3 2', '4 4 2', '5 5 2']]
     
        for line in lines:
            x, y, z =[], [], []
            for vals in line:
                col1, col2, col3 = vals.split()
                x.append(int(col1))
                y.append(int(col2))
                z.append(int(col3))
            yield[x, y, z]
     
     
    for vecteur in get_values():
        vecteurs.append(vecteur)
     
    for v in vecteurs:
        print v
    vincent@tiemoko:~/Bureau$ python vecteur.py
    [[1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [0, 0, 0, 0, 0]]
    [[1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 1, 1, 1, 1]]
    [[1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [2, 2, 2, 2, 2]]

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    C'est parfais, merci bien =)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/03/2012, 12h44
  2. Réponses: 2
    Dernier message: 20/02/2004, 09h47
  3. [ DB2] => [ORACLE] Récupération de données
    Par LeDid dans le forum DB2
    Réponses: 3
    Dernier message: 25/06/2003, 18h10
  4. Réponses: 13
    Dernier message: 20/03/2003, 09h11
  5. [XMLRAD] récupération de donnée
    Par Mitch79 dans le forum XMLRAD
    Réponses: 7
    Dernier message: 30/01/2003, 16h36

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