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

Réseau/Web Python Discussion :

Création de graphique avec boucle


Sujet :

Réseau/Web Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2020
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2020
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Création de graphique avec boucle
    Bonjour à tous,

    Je me permets d’écrire sur le forum car j'ai une optimisation de mon code à faire mais pas possible de trouver comment..
    Actuellement le code sert à réaliser un graphique via Bokeh, le graphique comporte 3 nuages de points venant de 3 bases de données différentes. Pour cela j'ai donc réalisé le code de création de nuage de point mais en 3 fois..
    Je voudrais donc reproduire cela mais avec une boucle pour éviter les répétition de code..

    ----------
    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
     
    from bokeh.plotting import figure, output_file, show
    import numpy as np
    import pandas as pd
     
     
    WTG01 = pd.read_csv('WTG01.csv', sep =';')
    WTG02 = pd.read_csv('WTG02.csv', sep =';')
    WTG03 = pd.read_csv('WTG03.csv', sep =';')
     
     
    plot = figure(title="Filtered Power Curve", width=1500, height=900, x_axis_label='Wind Speed (m/s)', y_axis_label='Power (kW)')
     
    WTG01 = p.circle(x=WTG01['Windgeschwindigkeit'], y=WTG01['Leistung'], legend = 'WTG01', color = 'red', size = 1)
    WTG01= WTG01.glyph
     
    WTG02 = p.circle(x=WTG02['Windgeschwindigkeit'], y=WTG02['Leistung'], legend = 'WTG02', color = 'green', size = 1)
    WTG02= WTG02.glyph
     
    WTG03 = p.circle(x=WTG03['Windgeschwindigkeit'], y=WTG03['Leistung'], legend = 'WTG03', color = 'orange', size = 1)
    WTG03= WTG03.glyph
     
     
    show(plot)
    ----------


    Mon souhait serrais d'avoir un seul "p.circle" etc... et donc avoir une boucle qui charge tout les "WTG01, 02, 03", etc..

    Je comprend que les explications peuvent ne pas être claire donc hésitez pas a demander plus d'inforations !

    Merci beaucoup !

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Citation Envoyé par Pieurre Voir le message
    Mon souhait serrais d'avoir un seul "p.circle" etc... et donc avoir une boucle qui charge tout les "WTG01, 02, 03", etc..
    Si une fonction f prend un objet en paramètre, plutôt qu'écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    a, b, c = 1, 2, 3
    f(a)
    f(b)
    f(c)
    on peut écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for e in (a, b, c):
         f(e)
    Dans votre cas, a, b, c sont WTG01, WTG02, WTG03... Mais vous devriez déjà pouvoir remplacer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    WTG01 = pd.read_csv('WTG01.csv', sep =';')
    WTG02 = pd.read_csv('WTG02.csv', sep =';')
    WTG03 = pd.read_csv('WTG03.csv', sep =';')
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WTG = [  pd.read_csv(f'WTG{i:02d}.csv', sep =';', for i in range(1, 4) ]
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [Graphique] Création de graphique avec GD ou artichow
    Par ckefran9 dans le forum Bibliothèques et frameworks
    Réponses: 17
    Dernier message: 19/03/2010, 14h28
  2. VBA Création de graphique avec source variable
    Par Romain57000 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/10/2008, 18h34
  3. Réponses: 2
    Dernier message: 16/02/2007, 16h34

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