Visualisation des données avec Python - La méthode de dessin simultané de graphes basés sur les attributs avec "Facet" est trop pratique

Dessin graphique en Python

La norme pour dessiner des graphiques Python est "matplotlib", mais cela semble un peu démodé. La complexité de la notation a été soulignée.

Par conséquent, dans cet article, je vais discuter de la façon d'utiliser "Seaborn", qui est un wrapper pour réaliser les fonctions de Matplotlib plus magnifiquement et plus facilement. Voir les liens ci-dessous pour plus d'informations sur Seaborn et comment l'utiliser de manière rudimentaire.

◆ Beau dessin graphique avec python - Utilisez seaborn pour améliorer l'analyse et la visualisation des données Partie 1 http://qiita.com/hik0107/items/3dc541158fceb3156ee0

Dessinez de nombreux graphiques à la fois

Dans cet article, j'expliquerai comment dessiner plusieurs graphiques avec différents attributs à la fois à partir des données. Par exemple, l'image ci-dessous. La relation entre le pas x et la position y est représentée graphiquement à la fois pour chaque attribut appelé "Marche".

image

Référence) http://stanford.edu/~mwaskom/software/seaborn/examples/many_facets.html

C'est une technique très pratique car je souhaite souvent l'utiliser dans la pratique de l'analyse de données. ・ Je veux voir la différence pour chaque "segment de clientèle" ・ Je veux voir les tendances des ventes pour chaque "division commerciale" ・ Je veux voir les changements dans les tendances des clients par région

Il existe de nombreuses situations d'utilisation possibles.

『Facet』 Cette méthode de représentation graphique de chaque attribut à la fois est appelée "Facette". Même dans seaborn, il est implémenté comme une fonction nommée "Facetgrid", Le progiciel de dessin graphique bien connu "ggplot" de R et Python a également une fonction appelée "Facet".

manière

Expliquons comment le faire. Importez les bibliothèques suivantes dont vous avez besoin

prepare.py


import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
import numpy as np

Préparez les données. Seaborn est livré avec certains ensembles de données par défaut, alors utilisons-le. Cette fois, j'utiliserai les données appelées "vols"

data.py


df_flights = sns.load_dataset('flights')
df_flights.head(5)

Si vous regardez la tête, vous pouvez voir que les données sont étendues verticalement pour l'année et le mois. De plus, on peut voir que la valeur numérique est une donnée qui montre la transition du nombre de passagers.

data.py


	year	month	    passengers
0	1949	January	    112
1	1949	February    118
2	1949	March	    132
3	1949	April	    129
4	1949	May         121

Il existe également une analyse de carte thermique utilisant les mêmes données. http://qiita.com/hik0107/items/67ad4cfbc9e84032fc6b

Ensuite, exécutez le dessin comme suit.

draw.py


grid = sns.FacetGrid(df_flights, col="year", hue="year", col_wrap=4, size=5)
grid.map(sns.pointplot, 'month', 'passengers')

Dans sns.FacetGrid, définissez d'abord le nombre de graphiques à dessiner dans quel type de division. Cette fois, je déclare que je vais dessiner un graphique pour chaque attribut de "année" dans les données appelées df_flights. (col = partie 'année')

L'année est de 12 ans (12 types) et est dessinée en carrés 4x3 par col_wrap = 4. hue = 'year' est une option pour rendre la couleur à la mode. Ce n'est pas grave si vous ne l'avez pas.

Le résultat de l'exécution est le suivant.

Le nombre de passagers augmente d'année en année et la haute saison de juillet à août se fait progressivement sentir. Tu peux le voir.

image

Cet article aussi

Un beau dessin graphique avec python -seaborn facilite l'analyse et la visualisation des données Partie 1 http://qiita.com/hik0107/items/3dc541158fceb3156ee0

Un beau dessin graphique avec Python -seaborn facilite l'analyse et la visualisation des données Partie 2 http://qiita.com/hik0107/items/7233ca334b2a5e1ca924

Si vous êtes intéressé par les data scientists, regardez d'abord ici, un résumé de la littérature et des vidéos http://qiita.com/hik0107/items/ef5e044d2f47940ba712

Recommended Posts

Visualisation des données avec Python - La méthode de dessin simultané de graphes basés sur les attributs avec "Facet" est trop pratique
[Visualisation] Je veux dessiner un beau graphique avec Plotly
Comment dessiner un graphique à 2 axes avec pyplot
Dessinez un graphique en traitant avec Pandas groupby
[Python] Comment dessiner un graphique linéaire avec Matplotlib
Dessinez un graphique avec NetworkX
Dessinez un graphique avec networkx
Tracez un graphe avec Julia + PyQtGraph (2)
Tracez un graphique avec Julia + PyQtGraph (1)
Dessinez un graphique avec des pandas + XlsxWriter
Dessinez un graphique avec l'interface graphique PySimple
(Matplotlib) Je veux dessiner un graphique avec une taille spécifiée en pixels
Comment dessiner un graphique à barres qui résume plusieurs séries avec matplotlib
Convertir un mémo à la fois avec Python 2to3
Comment dessiner un graphique avec Matplotlib
Si vous ne savez pas comment dessiner le graphique que vous voulez avec matplotlib, il est pratique de regarder la galerie
Dessinez simplement un graphique en spécifiant un fichier
Dessinez un graphique avec PyQtGraph Part 1-Drawing
Essayez de dessiner un "front de type carte météorologique" par apprentissage automatique basé sur des données météorologiques (5)
Essayez de dessiner un "front de type carte météo" par apprentissage automatique basé sur les données météorologiques (3)
Je viens de créer un outil pour afficher facilement les données sous forme de graphique par opération GUI
Essayez de dessiner un "front de type carte météo" par apprentissage automatique basé sur des données météorologiques (1)
Essayez de dessiner un "front de type carte météo" par apprentissage automatique basé sur des données météorologiques (4)
Essayez de dessiner un "front de type carte météo" par apprentissage automatique basé sur des données météorologiques (2)
Lien vers les points de données du graphe créé par jupyterlab & matplotlib
Dessinez un graphique avec des étiquettes japonaises dans Jupyter
Comment dessiner un graphique 3D avant l'optimisation
Dessinez un graphique avec les paramètres PyQtGraph Partie 3-PlotWidget
[Python] Dessinez un graphe orienté avec Dash Cytoscape
Essayez de dessiner une courbe de vie avec python
Dessinez un graphique avec les paramètres PyQtGraph Part 4-PlotItem
Dessinez un graphique avec PyQtGraph Partie 6 - Affichage d'une légende
Un graphique sympa pour l'analyse des données de Wiire!