11 Diagramme : Cleveland Dot Plot

En cours de progression. Toute amélioration est la bienvenue. Si vous souhaitez participer rendez vous sur contribuer au repo.

11.1 Avant-propos

Cette section explique comment réaliser des Cleveland dot plots. Ces graphiques sont une bonne alternative à de simple bar chart, particulièrement si vous avez beaucoup d’éléments différents dans votre jeu de données. Pour que les légendes d’un bar chart se superposent c’est très rapide. Avec le même espace, beaucoup plus de valeurs peuvent être incluses dans un dot plot, et cela est de fait plus facile à lire. R possède une fonction de base dotchart(), mais comme il s’agit d’un graphe très simple le faire “from scratch” en base R ou en ggplot2 vous permet une plus grand personnalisation.

Le code :

11.2 Multiple dot plots

Pour cet exemple nous utiliseront les données de 2010 sur les scores moyens de staisfaction d’un échantillon des écoles publiques de NYC.

## Parsed with column specification:
## cols(
##   DBN = col_character(),
##   `School Name` = col_character(),
##   `Number of Test Takers` = col_double(),
##   `Critical Reading Mean` = col_double(),
##   `Mathematics Mean` = col_double(),
##   `Writing Mean` = col_double()
## )

Notez que School Name est trié par niveau de facteur, qui par défaut est en ordre alphabétique. Un meilleur choix est de trier par un des niveau de Test. C’est généralement la meilleur façon pour trier des facteurs et mettre en évidence des motifs.

Pour réaliser un double tri de School Name par Test et ensuite Mean, on utilise forcats::fct_reorder2(). Cette fonction trie .f (un facteur ou un vecteur de caractères) en triant deux vecteurs .x et .y. Pour ce type de graphique, .x est la variable représentée par les points de couleurs et .y est la variable continues tracée sur l’axe des y.

Supposons que nous voulons trier les écoles par score de lecture moyen. On peut le faire en limitant la variable Test à “Reading” lorsque l’on trie sur Mean :

(Un grand merci à Zeyu Qiu pour le conseil sir comment régler .x directement en niveau de facteur, une meilleure approche que le réordonnement de facteurs pour s’adapter à fct_reorder2(), comme mentionné plus haut).

Bien qu’il s’agisse d’une méthode directe, il y aura peut-être des cas où il sera plus facile de préciser que vous voulez trier par rapport au premier ou au dernier facteur de la variable Test sans l’expliciter.

Si un niveau de facteur n’est pas spécifier, par défaut fct_reorder2() triera par rapport au dernier facteur de .x. Dans notre cas, “Writing” est le dernier facteur de Test :

Si vous voulez trier par rapport au premier facteur de .x, “Math” dans notre cas, vous aurez besoin de la version dev de forcats que vous pouvez installer via :

devtools::install_github("tidyverse/forcats")

Changer la fonction de trie par défaut last2()par first2() :







with