Visualisation des données dans R | Guide de visualisation des données dans R

Contenu

Jetons un coup d'œil à ce graphique pendant une seconde.,

entrepreneurs_voyage-8698540

Cette visualisation (créé à l'origine avec Tableau) est un excellent exemple de la façon dont la visualisation des données peut aider les décideurs. Imaginez raconter cette information à un investisseur à travers une table. Combien de temps pensez-vous qu'il faudra pour expliquer?

Avec un volume de données toujours croissant dans le monde d'aujourd'hui, il est impossible de raconter des histoires sans ces visualisations. Bien qu'il existe des outils dédiés comme Tableau, QlikView et d3.js, rien ne peut remplacer les outils de modélisation / statistiques avec une bonne capacité de visualisation. Il aide grandement à effectuer toute analyse de données exploratoire, ainsi que l'ingénierie fonctionnelle. C'est là que R offre une aide incroyable.

La programmation R offre un ensemble satisfaisant de fonctions et de bibliothèques intégrées (comme ggplot2, informations de l'utilisateur, treillis) pour créer des visualisations et présenter des données. Dans cet article, J'ai couvert les étapes pour créer des visualisations communes et avancées dans la programmation R. Mais, avant de les atteindre, examinons rapidement le bref historique de la visualisation des données. Si vous n'êtes pas intéressé par l'histoire, vous pouvez passer en toute sécurité à la section suivante.

Un bref historique de la visualisation des données:

Historiquement, la visualisation des données a évolué grâce au travail de professionnels de premier plan. Le fondateur des méthodes graphiques en statistiques est William Playfair. William Playfair a inventé quatre types de graphiques: le graphique linéaire, le graphique à barres des données économiques, le camembert et le camembert. Joseph Priestly avait créé l'innovation des premiers graphiques chronologiques, où des barres individuelles ont été utilisées pour visualiser la durée de vie d'une personne (1765). C'est comme ca, Les chronologies ont été inventées il y a 250 ans et non par Facebook!

Parmi les premières visualisations de données les plus célèbres se trouve la Marche de Napoléon, comme décrit Charles Minard. La visualisation des données comprend des informations détaillées sur l'effet de la température sur l'invasion de la Russie par Napoléon ainsi que des échelles de temps. Le graphe se distingue par sa représentation en deux dimensions de six types de données: le nombre des troupes de Napoléon; distance; Température; Latitude et longitude; direction du voyage; et l'emplacement par rapport à des dates spécifiques

Florence Nightangle a également été pionnière dans la visualisation de données. A dessiné des graphiques de Coxcomb pour représenter l'effet de la maladie sur la mortalité des troupes (1858). L'utilisation de cartes dans les graphiques ou l'analyse spatiale a été lancée par John Snow (no de Game of Thrones!). C'était une carte des décès dus à une épidémie de choléra à Londres, 1854, en ce qui concerne l'emplacement des pompes à eau publiques et a aidé à identifier l'épidémie dans une seule pompe.

Visualisation des données dans R:

Dans cet article, nous allons créer les visualisations suivantes:

Visualisation de base

  1. Histogramme
  2. Graphique à barres / lignes
  3. Box plot
  4. Nuage de points

Visualisation avancée

  1. Carte de chaleur
  2. Carte en mosaïque
  3. Affichage de la carte
  4. Graphiques 3D
  5. Corrélogramme

Astuce R: Les HistData Le package fournit une collection de petits ensembles de données qui sont intéressants et importants dans l'histoire des statistiques et de la visualisation des données..

graphique-3121261

AFFICHAGES DE BASE

Notes rapides:

  1. Les graphiques de base dans R peuvent être créés assez facilement. Les terrain commande est la commande à considérer.
  2. Prenez beaucoup de paramètres de données de l'axe des x, données de l'axe des y, étiquettes de l'axe des x, étiquettes de l'axe des y, couleur et titre. Pour créer des graphiques en courbes, il suffit d'utiliser le paramètre, tapez = l.
  3. Si vous voulez une boîte à moustaches, vous pouvez utiliser le mot box plot et, pour graphique à barres, utiliser la fonction graphique à barres.

1. Histogramme

L'histogramme est essentiellement un graphique qui divise les données en conteneurs (les pauses) et montre la distribution de fréquence de ces conteneurs. Vous pouvez également modifier les pauses et voir l'effet de la visualisation des données en termes de compréhension.

Laisse moi te donner un exemple.

Noter: Nous avons utilisé la commande par (mfrow = c (2,5)) pour s'adapter à plusieurs graphiques sur la même page pour plus de clarté (voir le code ci-dessous).

Les commandes suivantes montrent cela d'une meilleure manière. Dans le code suivant, les principal L'option définit le titre du graphique et le colonne appels d'options dans la palette de couleurs RColorBrewer pour définir les couleurs.

une bibliothèque(RColorBrewer)
Les données(VA Décès)
par(mfrow=c(2,3))
hist(VA Décès,pauses=10, col=brasseur.pal(3,"Ensemble3"),principal="Ensemble3 3 couleurs")
hist(VA Décès,pauses=3 ,col=brasseur.pal(3,"Ensemble2"),principal="Ensemble2 3 couleurs")
hist(VA Décès,pauses=7, col=brasseur.pal(3,"Ensemble1"),principal="Ensemble1 3 couleurs")
hist(VA Décès,,pauses = 2, col=brasseur.pal(8,"Ensemble3"),principal="Ensemble3 8 couleurs")
hist(VA Décès,col=brasseur.pal(8,"Gris"),principal="Gris 8 couleurs")
hist(VA Décès,col=brasseur.pal(8,"Légumes verts"),principal="Légumes verts 8 couleurs")

 rplot-5560610

Notez que si le nombre de cassures est inférieur au nombre de couleurs spécifié, les couleurs vont juste aux valeurs extrêmes comme dans le graphique “Établir 3 8 couleurs”. Si le nombre de coupes est supérieur au nombre de couleurs, les couleurs commencent à se répéter comme au premier rang.

2. Graphique à barres / lignes

Graphique linéaire

Vous trouverez ci-dessous le graphique linéaire montrant l'augmentation du nombre de passagers aériens sur une période donnée. Les graphiques linéaires sont généralement préférés lorsque nous allons analyser une tendance qui s'étend sur une période de temps.. En outre, le graphique linéaire convient également aux graphiques où nous devons comparer les changements relatifs des quantités à travers une variable (Comme le temps). Ci-dessous le code:

terrain(Passagers Aériens,tapez="je")  #Tracé linéaire simple

rplot01-6565176

Graphique à barres

Les graphiques à barres sont adaptés pour montrer la comparaison entre les totaux cumulés de divers groupes. Les graphiques empilés sont utilisés pour les graphiques à barres pour diverses catégories. Voici le code:

graphique à barres(iris$Pétale.Longueur) #Création d'un graphique à barres simple
barplot(iris$Sepal.Longueur,col = brasseur.pal(3,"Ensemble1"))
graphique à barres(tableau(iris$Espèce,iris$Sepal.Longueur),col = brasseur.pal(3,"Ensemble1")) #Parcelle empilée

rplot04-6257828

3. Box plot (y compris l'option de groupe)

La boîte à moustaches montre 5 nombres statistiquement significatifs: le minimum, le centile 25, la médiane, le centile 75 et le maximum. Donc, utile pour visualiser l'étendue des données et en déduire des inférences en conséquence. Voici le code de base:

boîte à moustaches(iris$Pétale.Longueur~iris$Espèce) #Création de Box Plot entre deux variables

Comprenons le code ci-dessous:

Dans l'exemple suivant, J'ai fait 4 graphiques sur un écran. En utilisant le signe ~, Je peux visualiser comment est la propagation (longueur des sépales) dans diverses catégories (espèce). Dans les deux derniers graphiques, j'ai montré l'exemple de palettes de couleurs. Une palette de couleurs est un groupe de couleurs utilisé pour rendre le graphique plus attrayant et pour aider à créer des distinctions visuelles dans les données..

Les données(iris)
par(mfrow=c(2,2))
boîte à moustaches(iris$Sepal.Longueur,col="rouge")
boîte à moustaches(iris$Sepal.Longueur~iris$Espèce,col="rouge")
oxplot(iris$Sepal.Longueur~iris$Espèce,col=chaleur.couleurs(3))
boîte à moustaches(iris$Sepal.Longueur~iris$Espèce,col = topo.couleurs(3))

rplot03-9857722

Pour plus d'informations sur l'utilisation des palettes de couleurs dans R, visitez ici.

4. Nuage de points (y compris la 3D et d'autres fonctionnalités)

Les nuages ​​de points aident à visualiser les données facilement et pour une inspection simple des données. Voici le code du nuage de points simple et multivarié:

terrain(x=iris$Pétale.Longueur) #Nuage de points simple
terrain(x=iris$Pétale.Longueur,y = iris $ Espèce) #Nuage de points multivarié

rplot06-9303955

La matrice de nuages ​​de points peut aider à visualiser plusieurs variables les unes avec les autres.

terrain(iris,col=brasseur.pal(3,"Ensemble1"))

rplot05-6894402

Vous pensez peut-être que je n'ai pas inclus de camemberts dans la liste des graphiques de base. C'est intentionnel, Ne manquez pas. En effet, les professionnels de la visualisation de données désapprouvent l'utilisation de graphiques à secteurs pour représenter les données.. En effet, l'œil humain ne peut pas visualiser les distances circulaires aussi précisément que les distances linéaires.. En peu de mots, tout ce qui peut être mis dans un camembert est mieux représenté sous forme de graphique linéaire. Cependant, si vous aimez le camembert, Etats-Unis:

 tarte(tableau(iris$Espèce))

Voici une liste complète de tous les graphiques que nous avons appris jusqu'à présent:

lastone-7383618

Vous avez peut-être remarqué que dans certains graphiques, ses titres ont été tronqués car j'ai mis trop de graphismes sur le même écran. Pour changer ça, vous pouvez simplement changer le paramètre 'mfrow’ pour la paire.

Visualisations avancées

Qu'est-ce que Hexbin Binning?

Nous pouvons utiliser le package hexbin au cas où nous aurions plusieurs points au même endroit (superposer). Le clustering hexagonal est une forme d'histogramme bivarié utile pour visualiser la structure dans des ensembles de données avec un grand n. Voici le code:

>une bibliothèque(hexagone)
>a=hexbin(diamants$prix,diamants$carat,xbins=40)
>une bibliothèque(RColorBrewer)
>terrain(une)

rplot08-9685596

Nous pouvons également créer une palette de couleurs, puis utiliser la fonction de traçage de hexbin pour un meilleur effet visuel. Voici le code:

>une bibliothèque(RColorBrewer)
>rf <- colorRampPalette(tour(brasseur.pal(40,'Set3')))
>hexbinplot(diamants$prix~diamants$carat, données=diamants, colramp=rf)

rplot09-2310346

parcelle de mosaïque

Un graphique en mosaïque peut être utilisé pour tracer très efficacement des données catégorielles avec la zone des données montrant les proportions relatives.

> Les données(CheveuxYeuxCouleur)
 > mosaïque(CheveuxYeuxCouleur)

rplot6-7112183

Carte de chaleur

Les cartes thermiques vous permettent d'effectuer une analyse exploratoire des données avec deux dimensions comme axe et la troisième dimension affichée par intensité de couleur. Cependant, vous devez convertir l'ensemble de données dans un format de tableau. Voici le code:

> carte de chaleur(comme.matrice(mtcars))

Vous pouvez utiliser la commande image () aussi pour ce type de visualisation comme:

> image(comme.matrice(b[2:7]))

rplot12-8109622

Comment résumer beaucoup de données?

Vous pouvez utiliser la fonction tableplot du package tabplot pour résumer rapidement une grande quantité de données

rplot13-5471253

Affichage de la carte

Le dernier né de R est la visualisation des données via les bibliothèques Javascript. Informations de l'utilisateur est l'une des bibliothèques JavaScript open source les plus populaires pour les cartes interactives. Se base sur https://rstudio.github.io/leaflet/

Vous pouvez l'installer directement depuis github en utilisant:

outils de développement::install_github("rstudio/dépliant")

rplot14-6542760

Le code de la carte ci-dessus est assez simple:

une bibliothèque(magrittr)
une bibliothèque(brochure)
m <- brochure() %>%
ajouter des tuiles() %>%  # Add default OpenStreetMap map tiles
addMarkers(ng = 77,2310, années = 28,6560, popup="La délicieuse cuisine de chandni chowk")
m  # Imprimer la carte

Graphiques 3D

L'un des moyens les plus simples d'impressionner quelqu'un avec les capacités de R est de créer un graphique 3D dans R sans écrire AUCUNE ligne de code et dans 3 minutes. Est-ce trop demander?

Nous utilisons le package R Commander qui agit comme une interface utilisateur graphique (IHM graphique). Ce sont les étapes:

  • Installez simplement le package Rcmdr
  • Utiliser l'option de tracé 3D à partir des graphiques

Le code suivant n'est pas écrit par l'utilisateur, mais il est généré automatiquement.

Noter: Quand on échange les axes du graphique, vous devriez voir les graphiques avec le code respectif comment nous passons les étiquettes d'axe à l'aide de xlab, ylab, et le titre du graphique en utilisant Main et color en utilisant le paramètre col.

>Les données(iris, paquet ="ensembles de données")
>scatter3d(Pétale.Largeur~Pétale.Longueur+Sépale.Longueur|Espèce, données=iris, ajustement ="linéaire"
>résidus=VRAI, parallèle=FAUX, bg="le noir", axis.scales=TRUE, grille=VRAI, ellipsoïde=FAUX)

capture d

Vous pouvez également créer des graphiques 3D avec le package Lattice. Le treillis peut également être utilisé pour les xyplots. Voici le code:

>attacher(iris)# 3nuage de points d par niveau de facteur
>nuage(Longueur.sépale~Largeur.sépale*Longueur.pétale|Espèce, principal="3D Nuage de points par espèce")
>xylplot(Sepal.Width ~ Sepal.Length, iris, groupes = iris$Espèce, pch= 20)

rplot16-8992675
rplot15-9787303

Corrélogramme (IHM graphique)

Le corrélogramme nous aide à visualiser les données dans des matrices de corrélation. Voici le code:

> cor(iris[1:4])
 Sepal.Length Sepal.Width Petal.Length Petal.Width
 Sepal.Length    1.0000000  -0.1175698    0.8717538   0.8179411
 Largeur.sépale    -0.1175698   1.0000000   -0.4284401  -0.3661259
 Pétale.Longueur    0.8717538  -0.4284401    1.0000000   0.9628654
 Pétale.Largeur     0.8179411  -0.3661259    0.9628654   1.0000000
 > corrgramme(iris)

rplot17-4433109

Il existe trois principaux packages d'interface graphique dans R. RCommander avec KMggplots, Rattle pour l'exploration de données et Deducer pour la visualisation de données. Ceux-ci aident à automatiser de nombreuses tâches.

Remarques finales

J'ai vraiment aimé écrire sur l'article et les différentes façons dont R en fait le meilleur logiciel de visualisation de données au monde.. Alors que Python peut progresser avec seaborn et ggplot, rien ne vaut l'immense nombre de packages dans R pour afficher des données statistiques.

Dans cet article, J'ai discuté de diverses formes de visualisation couvrant les niveaux de base aux niveaux avancés de tableaux et de graphiques utiles pour afficher les données à l'aide de la programmation R..

Avez-vous trouvé cet article utile? Faites-moi part de vos suggestions dans la section commentaire ci-dessous..

Si vous aimez ce que vous venez de lire et souhaitez continuer à apprendre sur l'analyse, abonnez-vous à nos e-mails, Suivez-nous sur Twitter ou comme le nôtre page le Facebook.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.