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 Discussion :

[Débutant] Diagramme en batons


Sujet :

R

  1. #1
    Membre habitué
    Inscrit en
    Juin 2007
    Messages
    259
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 259
    Points : 177
    Points
    177
    Par défaut [Débutant] Diagramme en batons
    Bonjour,

    Tout juste débutant sous R, j'essaye de tracer un diagramme en baton.
    Les données sont simples :
    - des notes variant de 0 à 20
    - un nombre d'étudiants ayant eu la note considéré
    J'ai pour cela créé un premier vecteur de notes :
    notes<-c(0:20)
    Puis un deuxième vecteur n :
    n<-c(2,0,0,4,0,3,4,10,6,5,8,13,10,7,8,5,2,0,3,0,0)
    signifiant que
    - 2 étudiants ont eu 0
    - 0 étudiants ont eu 1
    - 0 étudiants ont eu 2
    - 4 étudiants ont eu 3
    etc...

    Je cherchais à représenter un diagramme en bâton de cette distribution.
    Je ne sais pas s'il faut créer une table, une matrice ou une dataframe avec ces vecteurs...ou bien les utiliser tels quels.
    Ensuite quel type de fonction utiliser pour la représentation graphique ?
    J'ai essayé un :
    barplot(n,notes)
    qui parait fonctionner mais la largeur des barres parait proportionnelle : certaines sont très fines d'autres plus larges.
    Je n'ai pas vu d'option dans barplot permettant de niveler les largeurs des barres.
    Merci pour vos éclaircissements.

  2. #2
    Membre actif Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Points : 296
    Points
    296
    Par défaut réaliser un barplot
    salut,

    en fait, tu dois d'abord créer une table de contingence (une matrice)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    test = tapply(n,notes,sum)
    fais un print de test pour voir ce que çà donne...
    et ensuite c'est Ok, tu peux réaliser ton barplot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    barplot(test,main="effectifs par note",xlab="notes",ylab="effectif",ylim=c(0,20),axis.lty=1,beside=T)
    un lien intéressant au sujet des barplot :
    http://ww2.coastal.edu/kingw/psyc480...plot_tips.html

    a+

  3. #3
    Membre habitué
    Inscrit en
    Juin 2007
    Messages
    259
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 259
    Points : 177
    Points
    177
    Par défaut
    J'ai trouvé la solution :
    plot(notes,n,type="h") # trace les batons
    par(lty=4,new=T) # indique que le prochain traçé doit se superposer au premier avec une ligne dsicontinue
    plot(notes,n,type="l") # trace le polygone des fréquences

  4. #4
    Membre habitué
    Inscrit en
    Juin 2007
    Messages
    259
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 259
    Points : 177
    Points
    177
    Par défaut
    Citation Envoyé par habasque Voir le message
    en fait, tu dois d'abord créer une table de contingence (une matrice)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    test = tapply(n,notes,sum)
    Merci pour cette réponse !!!
    Je vais voir à quoi correspond ce tapply...

    J'avais en effet essayé un tableau de contingence mais j'obtenais pas du tout ce que je voulais !
    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
    25
    26
     
    > table1<-table(notes,n)
    > table1
         n
    notes 0 2 3 4 5 6 7 8 10 13
       0  0 1 0 0 0 0 0 0  0  0
       1  1 0 0 0 0 0 0 0  0  0
       2  1 0 0 0 0 0 0 0  0  0
       3  0 0 0 1 0 0 0 0  0  0
       4  1 0 0 0 0 0 0 0  0  0
       5  0 0 1 0 0 0 0 0  0  0
       6  0 0 0 1 0 0 0 0  0  0
       7  0 0 0 0 0 0 0 0  1  0
       8  0 0 0 0 0 1 0 0  0  0
       9  0 0 0 0 1 0 0 0  0  0
       10 0 0 0 0 0 0 0 1  0  0
       11 0 0 0 0 0 0 0 0  0  1
       12 0 0 0 0 0 0 0 0  1  0
       13 0 0 0 0 0 0 1 0  0  0
       14 0 0 0 0 0 0 0 1  0  0
       15 0 0 0 0 1 0 0 0  0  0
       16 0 1 0 0 0 0 0 0  0  0
       17 1 0 0 0 0 0 0 0  0  0
       18 0 0 1 0 0 0 0 0  0  0
       19 1 0 0 0 0 0 0 0  0  0
       20 1 0 0 0 0 0 0 0  0  0

Discussions similaires

  1. diagramme en baton et python
    Par koreimy dans le forum Général Python
    Réponses: 5
    Dernier message: 18/09/2013, 14h11
  2. Diagramme en baton tout bete
    Par fuyo2004 dans le forum MATLAB
    Réponses: 7
    Dernier message: 10/06/2009, 12h22
  3. Réponses: 0
    Dernier message: 14/02/2008, 21h35
  4. diagramme en batons
    Par paolo2002 dans le forum Delphi
    Réponses: 2
    Dernier message: 05/07/2006, 11h25
  5. [Débutant][uml][pdf]Exporter un diagramme Omondo en pdf ?
    Par folsen dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 05/07/2004, 15h40

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