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 :

Afficher l'équation d'une droite sur un graphique Matplotlib


Sujet :

Calcul scientifique Python

  1. #1
    Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Février 2019
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2019
    Messages : 67
    Points : 42
    Points
    42
    Par défaut Afficher l'équation d'une droite sur un graphique Matplotlib
    Bonjour à tous,

    j'ai une question très simple...
    J'ai réussi à faire le programme suivant portant sur la loi d'Ohm:
    - L'utilisateur entre des valeurs de tension U et d'intensité I.
    - Le graphique donnant la tension en fonction de l'intensité s'affiche sur l'écran en utilisant Matplotlib.
    - Les points n'étant pas forcément parfaitement alignés, j'ai utilisé la méthode des moindres carrés pour déterminer les coefficients "a" et "b" correspondant à la régression linéaire de l'ensemble de mes points.

    Tout fonctionne.

    - Je souhaite seulement rajouter l'équation de la droite obtenue en haut à droite sur le graphique Matplotlib, sachant donc, que "a" et "b" sont donc des variables numériques correspondant aux coefficients de régression.

    - Si j'étais dans le Terminal Python, j'aurai écrit pour cela : print("U=",a,"*I+",b).

    - Avec Matplotlib, j'ai essayé: plt.text("U=",a,"*I+",b) mais cela ne fonctionne pas.

    Faut-il utiliser autre chose que plt.text ou s'agit-il d'un problème de syntaxe et comment le corriger ? Merci. J'utilise Python 3.0

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Olivier20000 Voir le message
    - Avec Matplotlib, j'ai essayé: plt.text("U=",a,"*I+",b) mais cela ne fonctionne pas.

    Faut-il utiliser autre chose que plt.text ou s'agit-il d'un problème de syntaxe et comment le corriger ? Merci. J'utilise Python 3.0
    Çà ne fonctionne pas et le message d'erreur devrait vous indiquer qu'il manque des arguments.
    Dans ce cas, il faut prendre le temps d'ouvrir la documentation de matplotlib.text pour voir ce qu'ils sont et éventuellement regarder dans les exemples comment çà s'utilise.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Février 2019
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2019
    Messages : 67
    Points : 42
    Points
    42
    Par défaut
    Bonjour,

    Merci pour votre aide.
    J'ai bien compris que pour utiliser la fonction text il fallait 3 arguments, les 2 premiers étant les coordonnées de la position du texte sur le graphique.
    Par contre, sur tous les exemples de la documentation comportant l'affichage d'un texte sur Matplotlib, je n'ai ai pas vu avec l'affichage de valeurs de variables.
    J'ai donc cherché sur internet et j'ai donc trouvé cette méthode qui me convient:

    plt.text(x,y, "La valeur de la résistance est: {} Ohm.".format(a)) a étant la valeur de la résistance, donc la variable, à afficher.


    Cordialement,


    Citation Envoyé par wiztricks Voir le message
    Salut,



    Çà ne fonctionne pas et le message d'erreur devrait vous indiquer qu'il manque des arguments.
    Dans ce cas, il faut prendre le temps d'ouvrir la documentation de matplotlib.text pour voir ce qu'ils sont et éventuellement regarder dans les exemples comment çà s'utilise.

    - W

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Olivier20000 Voir le message
    Par contre, sur tous les exemples de la documentation comportant l'affichage d'un texte sur Matplotlib, je n'ai ai pas vu avec l'affichage de valeurs de variables.
    J'ai donc cherché sur internet et j'ai donc trouvé cette méthode qui me convient:
    plt.text(x,y, "La valeur de la résistance est: {} Ohm.".format(a)) a étant la valeur de la résistance, donc la variable, à afficher.
    Le chaînes de caractères (et comment les formater, concaténer,...) sont des objets de bases du langage.
    On peut supposer que vous les avez acquis avant de vous lancer à programmer avec matplotlib.

    Après il faut lire les exemples, dans le premier, on y trouve:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            label = r'$%s_{_{\mathrm{%s}}}$' % (orig_label[0], orig_label[1:])
     
            plt.text(x, y, label, size=label_text_size, ha='center', va='center',
                     color=labelcolor or fc)
    mais si vous ne savez pas ce que vous cherchez, vous pouvez passer devant 500 fois sans le voir.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [XL-2013] Tracer une droite sur un graphique
    Par backx3 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/06/2016, 12h54
  2. [SQL] Afficher le résultat d'une table sur 2 colonnes ?
    Par tentsuken dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 12/06/2007, 09h58
  3. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 13h20
  4. Afficher un bouton appartenant à une classe sur une form
    Par Julien_riquelme dans le forum Composants VCL
    Réponses: 2
    Dernier message: 05/09/2005, 13h10

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