Maison > développement back-end > Tutoriel Python > Puissante bibliothèque de dessins Python open source

Puissante bibliothèque de dessins Python open source

王林
Libérer: 2023-05-11 12:07:05
avant
1434 Les gens l'ont consulté

功能强大的开源 Python 绘图库

La raison pour laquelle j'ai déjà utilisé matplotlib est que j'ai appris sa syntaxe complexe et que les centaines d'heures de temps y ont été "coulées". Cela m'a également amené à passer d'innombrables nuits à chercher sur StackOverflow comment « formater les dates » ou « ajouter un deuxième axe Y ».

Mais nous avons maintenant un meilleur choix, comme la bibliothèque de traçage Python open source Plotly, facile à utiliser, bien documentée et puissante. Aujourd'hui, je vais vous faire vivre une expérience approfondie et apprendre comment il peut dessiner de meilleurs graphiques avec un code super simple (même une seule ligne !).

Tout le code de cet article a été open source sur Github et tous les graphiques sont interactifs. Veuillez utiliser le bloc-notes Jupyter pour les afficher.

(Adresse du code source Github : https://github.com/WillKoehrsen/Data-Analysis/blob/master/plotly/Plotly%20Whirlwind%20Introduction.ipynb)

功能强大的开源 Python 绘图库

(Exemple de graphique dessiné par plotly. Source de l'image : plot.ly)

Plotly Présentation

Le package Python de plotly est un open base de code source basée sur plot.js, qui est basée sur d3.js. Ce que nous utilisons en réalité est une bibliothèque qui encapsule plotly, appelée boutons de manchette, ce qui vous permet d'utiliser plus facilement les tables de données plotly et Pandas pour travailler ensemble.

*Remarque : Plotly elle-même est une entreprise de technologie de visualisation proposant plusieurs produits différents et des ensembles d'outils open source. La bibliothèque Python de Plotly est gratuite. En mode hors ligne, vous pouvez créer un nombre illimité de graphiques. En mode en ligne, le service de partage de Plotly étant utilisé, vous ne pouvez générer et partager que 25 graphiques.

Toutes les visualisations de cet article ont été réalisées dans Jupyter Notebook à l'aide de la bibliothèque plotly + cufflinks en mode hors ligne. Après avoir terminé l'installation à l'aide de pip install cufflinks plotly, vous pouvez utiliser le code suivant pour terminer l'importation dans Jupyter : : Les histogrammes et les boîtes à moustaches

功能强大的开源 Python 绘图库Les graphiques d'analyse univariée sont souvent la pratique standard lors du démarrage de l'analyse des données, et les histogrammes sont fondamentalement l'un des graphiques nécessaires pour l'analyse de distribution univariée (bien qu'ils présentent certaines lacunes. ).

Prenons comme exemple le nombre total de likes sur les articles de blog (voir Github pour les données originales : https://github.com/WillKoehrsen/Data-Analysis/tree/master/medium) et faites un simple histogramme interactif :

(df dans le code est un objet dataframe Pandas standard)

# 🎜🎜 #功能强大的开源 Python 绘图库 (Histogramme interactif créé à l'aide de plotly + boutons de manchette)

Pour les étudiants déjà habitués à matplotlib, il vous suffit de taper une lettre supplémentaire (remplacer .plot par .iplot). Obtenez des graphiques interactifs plus beaux ! Cliquer sur des éléments de l'image révèle des informations détaillées, effectue un zoom avant et arrière et (nous y reviendrons ensuite) met en évidence des fonctionnalités telles que le filtrage de certaines parties de l'image.

Si vous souhaitez dessiner un histogramme empilé, faites simplement ceci : 功能强大的开源 Python 绘图库

# 🎜🎜# Effectuez un traitement simple sur la table de données pandas et générez un graphique à barres :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

Comme indiqué ci-dessus, nous pouvons intégrer les capacités des boutons de manchette plotly + avec les pandas. Par exemple, nous pouvons d'abord utiliser .pivot() pour effectuer une analyse de tableau croisé dynamique, puis générer un graphique à barres.

Par exemple, compter le nombre de nouveaux fans apportés par chaque article dans différents canaux de publication : 功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

L'avantage des graphiques interactifs est que nous pouvons explorer les données et diviser les sous-éléments pour les analyser à volonté. Les boîtes à moustaches peuvent fournir beaucoup d'informations, mais si vous ne pouvez pas voir les valeurs spécifiques, vous risquez d'en manquer beaucoup !

Nuage de points

Le nuage de points est le contenu principal de la plupart des analyses. Il nous permet de voir l'évolution d'une variable au fil du temps, ou l'évolution de la relation entre deux (ou plusieurs) variables.

Analyse des séries chronologiques

Dans le monde réel, une partie considérable des données comporte des éléments temporels. Heureusement, plotly + cufflinks est livré avec une fonctionnalité intégrée pour prendre en charge l'analyse visuelle des séries chronologiques.

Prenons comme exemple les données de l'article que j'ai publié sur le site "Towards Data Science". Construisons un ensemble de données en utilisant l'heure de publication comme index pour voir comment la popularité de l'article change :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

.

Dans l'image ci-dessus, nous avons accompli plusieurs choses avec une seule ligne de code :

  • Générer automatiquement une belle série temporelle Dans les étiquettes affichées lorsque
  • Afin d'afficher plus de données, nous pouvons facilement ajouter des annotations de texte :

功能强大的开源 Python 绘图库

(Nuage de points avec annotations de texte)

功能强大的开源 Python 绘图库Dans le code ci-dessous, nous ajouterons un nuage de points bivarié coloré par la troisième variable catégorielle :

功能强大的开源 Python 绘图库

Ensuite, nous allons obtenir un petit plus compliqué : l'axe logarithmique. Nous y parvenons en spécifiant le paramètre de mise en page de plotly (pour différentes mises en page, veuillez vous référer au document officiel https://plot.ly/python/reference/), et nous combinons la taille du point (paramètre de taille) et un La variable numérique read_ratio (taux de lecture) est liée. Plus le nombre est grand, plus la taille de la bulle est grande.

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

Si on veut être plus compliqué (voir le code source sur Github pour plus de détails), on peut même mettre 4 variables dans une seule image ! (Cependant, il n'est pas recommandé de le faire réellement)

功能强大的开源 Python 绘图库

Comme auparavant, nous pouvons combiner pandas et plotly+boutons de manchette pour obtenir de nombreux tableaux utiles :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

Il est recommandé de vérifier le documentation officielle, ou le code source, qui contient plus d'exemples et d'exemples de fonctions. Avec seulement une ou deux lignes de code, vous pouvez ajouter des éléments utiles tels que des annotations de texte, des lignes auxiliaires et des lignes les mieux ajustées à votre graphique, tout en conservant les fonctions interactives d'origine.

功能强大的开源 Python 绘图库Fonctions de dessin avancées

Ensuite, nous présenterons en détail plusieurs graphiques spéciaux. Vous ne les utiliserez peut-être pas très souvent, mais je vous garantis que tant que vous les utilisez bien, ils impressionneront certainement les gens. Nous allons utiliser le module figure_factory de plotly, qui peut générer de superbes graphiques avec une seule ligne de code !

Matrice de nuages ​​de points

Si nous voulons explorer la relation entre de nombreuses variables différentes, la matrice de nuages ​​de points (également connue sous le nom de SPLOM) est un excellent choix :

功能强大的开源 Python 绘图库

Même si elle est aussi complexe. sont également entièrement interactifs, nous permettant d’explorer les données plus en détail.

Carte thermique des relations

Afin de refléter la relation entre plusieurs variables numériques, nous pouvons calculer leur corrélation puis la visualiser sous forme de carte thermique annotée :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

Thèmes personnalisés

En plus d'une infinité En plus des divers graphiques, Cufflinks propose également de nombreux thèmes de coloration différents, ce qui vous permet de basculer facilement entre différents styles de graphiques. Les deux images suivantes sont respectivement le thème "espace" et le thème "ggplot" :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

De plus, il y a des graphiques 3D (surface et bulle) :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

Pour ceux qui sont intéressés par la recherche Pour les utilisateurs, il n'est pas difficile de créer un diagramme circulaire :

功能强大的开源 Python 绘图库

Modifier dans Plotly Chart Studio

Après avoir généré ces graphiques dans Jupyter Notebook, vous constaterez que le graphique Un petit lien apparaît dans le coin inférieur droit disant "Exporter vers plot.ly (Publier vers plot.ly)". Si vous cliquez sur ce lien, vous accéderez à un « Atelier graphique » (https://plot.ly/create/).

Ici, vous pouvez réviser et peaufiner davantage votre diagramme avant la présentation finale. Vous pouvez ajouter des annotations, choisir les couleurs de certains éléments, tout organiser et produire un superbe graphique. Plus tard, vous pouvez également le publier sur le Web, générant ainsi un lien que d'autres pourront consulter.

Les deux photos suivantes ont été réalisées lors de l'atelier carte :

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

Après avoir tant parlé, es-tu fatigué de la lire ? Cependant, nous n'avons pas épuisé toutes les capacités de cette bibliothèque. En raison du manque de place, il existe de meilleurs graphiques et exemples, veuillez donc consulter les documents officiels de plotly et de boutons de manchette pour les visualiser un par un.

功能强大的开源 Python 绘图库

(Carte interactive Plotly montrant les données des parcs éoliens à travers les États-Unis. Source : plot.ly)

Enfin…

La pire chose à propos de l'erreur des coûts irrécupérables est que les gens ne peuvent souvent le faire que lorsque vous abandonnez votre vos efforts précédents vous feront réaliser combien de temps vous avez perdu.

Lors du choix d'une bibliothèque de traçage, les fonctionnalités dont vous avez le plus besoin sont :

Graphiques sur une seule ligne pour explorer rapidement les données

  • Éléments interactifs pour diviser/examiner les données
  • Si nécessaire Des options qui vous permettent d'explorer des informations détaillées
  • Personnalisez facilement avant la présentation finale

Désormais, le meilleur choix pour implémenter les fonctions ci-dessus en Python est plotly. Il nous permet de générer rapidement des diagrammes visuels et des fonctionnalités interactives nous permettent de mieux comprendre les informations.

J'avoue que le traçage est certainement la partie la plus agréable du travail en science des données, et plotly rend l'exécution de ces tâches encore plus agréable.

功能强大的开源 Python 绘图库

(Un graphique montrant comment la joie de dessiner avec Python a changé au fil du temps. Source versdatascience.com)

En 2022, il est temps de mettre à niveau votre bibliothèque de dessins Python et de vous préparer à la science des données et à la visualisation. Devenez plus rapide, plus fort et plus beau !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:51cto.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal