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 :

Matplotlib scatter et largeur des points


Sujet :

Python

  1. #1
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut Matplotlib scatter et largeur des points
    Bonjour ,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    s = [(0, 0), (0, 2), (1, 3), (-1, 3), (0, 2), (0, 0), (1, 1),  (0, 0), (1, 1), (-1, 1), (-2, 2), (-2, 0), (-1, 1), (1, 1)]
    print(len(s))
    x=[];y=[]
    for i in s :
        x.append(i[0])
        y.append(i[1])
     
    import matplotlib.pyplot as plt
     
    plt.scatter(x,y)
    plt.grid()
    plt.show()
    Je cherche à augmenter la largeur du spot, et en fonction de la répétition de ces points.
    (0, 0) est présent 3 fois , comment élargir le spot de ce point ?
    Quel paramètre dans scatter ?

    @+

  2. #2
    Membre actif Avatar de BioKore
    Homme Profil pro
    Dresseur d'Alpaga
    Inscrit en
    Septembre 2016
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Dresseur d'Alpaga

    Informations forums :
    Inscription : Septembre 2016
    Messages : 300
    Points : 219
    Points
    219
    Par défaut
    Salut bm,

    je ne suis pas un pro du plot, mais il semble que scatter possède un paramètre 's' pour la taille (voir ce post)

    Je vais tester ça mais un value_counts sur les les couples de valeur me semble correct.
    Je vais tester ça tiens, ça me fera un bon exercice.

    edit: effectivement, ceci devrais répondre au problème:
    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
    s = [(0, 0), (0, 2), (1, 3), (-1, 3), (0, 2), (0, 0), (1, 1),  (0, 0), (1, 1), (-1, 1), (-2, 2), (-2, 0), (-1, 1), (1, 1)]
    print(len(s))
    x=[];y=[]
    for i in s :
        x.append(i[0])
        y.append(i[1])
     
    factor = 150
    l = [factor*s.count(v) for v in s]
     
    import matplotlib.pyplot as plt
     
    plt.scatter(x,y, s=l)
    plt.grid()
    plt.show()

  3. #3
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [s.count(v) for v in s]
    Extra, pour le comptage dans la list s.

    Un s de 64 couples donne ceci
    Et une figure plus régulière en découle

    s = [(0, 4), (0, 2), (1, 3), (-1, 3), (0, 2), (0, 0), (1, 1), (-1, 1), (1, 3), (1, 1), (2, 2), (0, 2), (-1, 3), (-1, 1), (0, 2), (-2, 2), (0, 2), (0, 0), (1, 1), (-1, 1), (0, 0), (0, -2), (1, -1), (-1, -1), (1, 1), (1, -1), (2, 0), (0, 0), (-1, 1), (-1, -1), (0, 0), (-2, 0), (1, 3), (1, 1), (2, 2), (0, 2), (1, 1), (1, -1), (2, 0), (0, 0), (2, 2), (2, 0), (3, 1), (1, 1), (0, 2), (0, 0), (1, 1), (-1, 1), (-1, 3), (-1, 1), (0, 2), (-2, 2), (-1, 1), (-1, -1), (0, 0), (-2, 0), (0, 2), (0, 0), (1, 1), (-1, 1), (-2, 2), (-2, 0), (-1, 1), (-3, 1)]

    Un scatter3d est une figure en forme de tube verticaux ou de vague serait le point final.


Discussions similaires

  1. Réponses: 11
    Dernier message: 14/04/2020, 17h08
  2. [Matplotlib]Gestion des points
    Par bm dans le forum Calcul scientifique
    Réponses: 1
    Dernier message: 02/08/2016, 11h35
  3. Nuances de couleurs des points d'une courbe matplotlib
    Par zeddiccus dans le forum Programmation multimédia/Jeux
    Réponses: 5
    Dernier message: 16/07/2015, 13h38
  4. Couleur des points dans un scatter plot de Jpgraph
    Par uluk7 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 27/05/2015, 15h02
  5. Réponses: 0
    Dernier message: 04/12/2009, 05h07

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