AIDE PYTHON

HoloViews Python (Comment ça marche pour les développeurs)

Introduction

HoloViews est une bibliothèque Python flexible qui rend la visualisation de données réelle et facile. Grâce à une intégration étroite au sein de la pile informatique scientifique, il aide les utilisateurs à créer des visualisations souples avec très peu de lignes de code, en prise en charge de backends tels que Matplotlib, Bokeh ou Plotly. Les développeurs ont cherché à mettre au point des Holoviews pour que vous puissiez cesser de tracer vos données manuellement. Il est facile de créer des visualisations interactives et hautement personnalisables qui s'intègrent parfaitement dans les flux de travail d'analyse des données.

IronPDF est une bibliothèque Python utilisée pour créer, éditer et manipuler des documents PDF. Il permet la conversion de HTML en PDF, l'édition de contenu, la mise en œuvre de la sécurité et l'ajout d'annotations et de formulaires. En associant HoloViews à IronPDF, il ne vous reste plus qu'à intégrer des tracés de données interactifs et perspicaces dans des rapports PDF professionnels générés à l'aide d'IronPDF.

Cette intégration est particulièrement utile aux analystes de données, aux scientifiques, aux professionnels de l'entreprise et à tous ceux qui ont besoin de communiquer les résultats de leurs analyses de manière efficace et claire.

Qu'est-ce que Holoviews ?

Le module Python, HoloViews, a été développé en gardant à l'esprit la simplicité et l'élégance de la visualisation de données. Il propose des termes déclaratifs de haut niveau de telle sorte que les utilisateurs n'ont pas à se préoccuper de la manière dont les choses seront mises en œuvre, mais à se concentrer sur ce qu'ils veulent visualiser. HoloViews est flexible pour tout type de données et de structures ; il s'intègre facilement à la pile de calcul scientifique et à d'autres bibliothèques comme Pandas, Dask ou XArray.

HoloViews Python (Comment cela fonctionne pour les développeurs) : Figure 1 - Page web du module HoloViews

Ceci est dû au fait qu'il supporte plusieurs back-ends graphiques, comme Matplotlib, Bokeh, et Plotly, d'une manière qui rend facile le changement entre plusieurs bibliothèques de visualisation. Holoviews présente également des avantages dans les analyses de données exploratoires lorsqu'il s'agit de créer des graphiques interactifs pour annoter vos données.

C'est ce que fait HoloViews : abstraire tous les problèmes de visualisation de données afin que les utilisateurs puissent transformer la quantité massive d'informations à leur disposition en images belles et significatives avec peu ou pas de codage. Il est ainsi devenu l'un des outils les plus importants pour un scientifique ou un analyste de données.

Caractéristiques des vues d'ensemble

La raison pour laquelle HoloViews est capable de soutenir les visualisations est qu'il intègre les fonctionnalités suivantes, entre autres :

Déclaration de syntaxe : HoloViews utilise une syntaxe déclarative de haut niveau, permettant aux utilisateurs de spécifier facilement exactement ce qu'ils souhaitent voir, rendant la création de visualisations complexes simple.

Intégration native : Il prend en charge de manière native une grande variété de types et de structures de données dès le départ, grâce à une intégration étroite avec des bibliothèques au sein de l'ensemble de calcul scientifique comme Pandas, Dask, XArray, et plus encore.

Prise en charge des bibliothèques externes : Il prend en charge une gamme de bibliothèques, y compris Matplotlib, Bokeh et Plotly. Cette flexibilité permet aux utilisateurs de passer d'une bibliothèque de visualisation à l'autre sans changer une seule ligne de code.

Interactivité : HoloViews fournit des tracés interactifs pour une visualisation dynamique, permettant aux utilisateurs d'explorer et d'interpréter les données de manière interactive.

Extensibilité : Il offre un riche ensemble d'options pour personnaliser les visualisations et prend en charge de nombreux backends, permettant aux utilisateurs d'étendre et d'affiner leurs visualisations selon leurs besoins.

Facilité d'utilisation : L'API de haut niveau de HoloViews réduit la quantité de code nécessaire pour créer des visualisations de grands ensembles de données, permettant aux utilisateurs de se concentrer davantage sur l'analyse des données plutôt que sur les complexités de la création de graphiques.

Composabilité : HoloViews permet la création de graphiques complexes et riches, en se concentrant sur la simplicité et la fluidité de la visualisation. Les utilisateurs peuvent combiner sans effort des composants simples pour obtenir des visualisations sophistiquées.

Flux de données : HoloViews simplifie le processus de construction de workflows complexes pour le traitement et la présentation des données.

Écosystème riche : Faisant partie de l'écosystème HoloViz, HoloViews offre une suite d'outils pour la visualisation de données et le développement d'applications. Il fonctionne bien avec d'autres outils robustes de l'écosystème, tels que Panel et Datashader.

Créer et configurer des images Holoviews

L'installation des HoloViews se fait en suivant les étapes suivantes :

Installer HoloViews et ses dépendances

Tout d'abord, téléchargez et installez HoloViews et toutes ses dépendances en utilisant les commandes pip suivantes :

pip install holoviews
pip install bokeh
pip install holoviews
pip install bokeh
SHELL

Utiliser HoloViews pour générer des graphiques

#import holoviews object
import holoviews as hv
from holoviews import opts
import numpy as np
# Initialize HoloViews with Bokeh backend
hv.extension('bokeh')
# Generate data
x = np.linspace(0, 10, 100)
y = np.sin(x)
# Create plotting your data annotate, with holoviews elements
line_plot = hv.Curve((x, y), label='Sine Wave').opts(
    title="Line Plot", xlabel="X-axis", ylabel="Y-axis", color='blue'
)
scatter_plot = hv.Scatter((x, y), label='Scatter Plot').opts(
    size=10, color='red', title="Scatter Plot", xlabel="X-axis", ylabel="Y-axis"
)
hist = hv.Hist(np.histogram(y, bins=20)).opts(
    title="Histogram", xlabel="Value", ylabel="Frequency", color='green'
)
# Combine the Holoviews plot into a layout
layout = (line_plot + scatter_plot + hist).cols(1)
layout.opts(
    opts.Curve(width=400, height=400),
    opts.Scatter(width=400, height=400),
    opts.Histogram(width=400, height=400)
)
# Display layout
layout
# Save to file
hv.save(layout, 'visualization.html', fmt='html')
py
PYTHON

L'extrait de code ci-dessus génère et personnalise certains des éléments graphiques de ces visualisations de données dans HoloViews, puis les compose dans une présentation unique. Effectuez quelques importations et lancez HoloViews pour utiliser le backend Bokeh afin que les tracés puissent être interactifs. Générer un jeu de données avec NumPy en créant un tableau de valeurs x et leurs valeurs sinusoïdales correspondantes y.

Ce script produira trois types de tracés : un tracé linéaire d'une onde sinusoïdale, un diagramme de dispersion avec les points de données exacts et un histogramme de la distribution des valeurs sinusoïdales. Tous sont personnalisés avec un titre, l'étiquetage des axes et la coloration via la méthode `opts`.

HoloViews Python (Comment cela fonctionne pour les développeurs) : Figure 2 - Visualisations générées : Graphiques en ligne et à points

HoloViews Python (Comment ça fonctionne pour les développeurs) : Figure 3 - Visualisations générées : Histogramme

Cela permet d'empiler toutes les parcelles les unes sur les autres dans une colonne. Enfin, nous montrons la disposition transparente de la visualisation, puis utilisons hv.save pour l'enregistrer avec son contenu complet dans un fichier HTML nommé 'visualization.html'. En utilisant HoloViews, l'ensemble du processus, de la construction au style et à l'enregistrement d'une visualisation interactive, devient très facile.

Combiner Holoviews et IronPDF

Vous allez maintenant apprendre à utiliser HoloViews pour la visualisation de données et IronPDF pour créer des documents PDF avec ces visualisations. Un ensemble d'instructions vous guidera dans l'installation de ces bibliothèques, la création de visualisations, puis la génération de PDF à partir de ces visualisations à l'aide de HoloViews et IronPDF.

Qu'est-ce qu'IronPDF ?

HoloViews Python (Comment ça fonctionne pour les développeurs) : Figure 4 - Page web d'IronPDF

En utilisant le module Python IronPDF, il est possible d'accomplir différentes tâches avancées et programmatiques au sein d'un document PDF. Il s'agit d'un outil très robuste et complet qui permet de créer, d'éditer et de lire des PDF. La création de documents directement à partir de fichiers HTML permet de restaurer la convivialité de tous les documents PDF créés et modifiés précédemment.

L'utilisation d'IronPDF permet une meilleure compatibilité et la création de rapports PDF attrayants. Les applications qui dépendent de la création et de la mise à jour dynamiques des PDF en bénéficieront particulièrement. Il s'agit également d'une bibliothèque dotée d'une page de documentation vaste et compréhensible contenant de nombreux exemples qui vous aideront tout au long du processus.

Conversion de HTML en PDF

Grâce à la documentation IronPDF, n'importe quelle donnée HTML peut être générée en un document PDF en quelques instants. Il est possible de tirer parti de la plupart des éléments les plus récents qui font désormais partie de HTML5, CSS3 et Javascript pour créer des publications PDF créatives et captivantes directement à partir de matériel web.

Générer et éditer des PDF

Avec un peu de programmation informatique, vous pouvez créer par programme de nouveaux documents PDF comprenant du texte, des graphiques et des tableaux, parmi de nombreuses autres caractéristiques. Vous pouvez également ouvrir des documents préparés à l'avance dans votre navigateur avec IronPDF et les modifier par la suite. Il est toujours possible d'ajouter, de modifier ou de supprimer du contenu dans un document PDF.

Conception et style complexes

Les mises en page complexes avec plusieurs polices, couleurs et autres éléments de conception sont autorisées car les PDF contiennent un style implicite. Supposons maintenant que le contenu d'un PDF soit dynamique et susceptible d'être modifié. Il est nettement plus facile de restituer les données dans le format HTML par défaut et non en JavaScript.

Installer IronPDF

Vous pouvez installer la bibliothèque IronPDF via pip avec les commandes suivantes :

pip install ironpdf
pip install ironpdf
SHELL

Générer des graphiques dans les PDF avec Holoviews

Voici un exemple d'utilisation des HoloViews pour créer des visualisations simples.

import holoviews as hv
from holoviews import opts
import numpy as np
from ironpdf import *     import warnings
# Suppress warnings
warnings.filterwarnings('ignore')
# Set IronPDF license key (replace with your actual key)
License.LicenseKey = "";
# Initialize HoloViews with Bokeh backend
hv.extension('bokeh')
# Generate data
x = np.linspace(0, 10, 100)
y = np.sin(x)
# holoviews objects
line_plot = hv.Curve((x, y), label='Sine Wave').opts(
    title="Line Plot", xlabel="X-axis", ylabel="Y-axis", color='blue'
)
scatter_plot = hv.Scatter((x, y), label='Scatter Plot').opts(
    size=10, color='red', title="Scatter Plot", xlabel="X-axis", ylabel="Y-axis"
)
# Combine plots into a layout
layout = (line_plot + scatter_plot ).cols(1)
layout.opts(
    opts.Curve(width=400, height=400),
    opts.Scatter(width=400, height=400),
    opts.Histogram(width=400, height=400)
)
# Save to file
hv.save(layout, 'visualization.html', fmt='html')
# Convert the HTML file to PDF
pdf_file_path = 'document.pdf'
html_to_pdf = ChromePdfRenderer()
pdf_document = html_to_pdf.RenderHtmlFileAsPdf('visualization.html')
# Save the PDF
pdf_document.SaveAs(pdf_file_path)
py
PYTHON

Le code ci-dessus intègre IronPDF à HoloViews pour créer des visualisations et les convertir ensuite en documents PDF. Il commence par supprimer les avertissements et importer les modules requis : ironpdf pour le rendu des PDF, numpy pour la génération de certaines données à tracer, et holoviews pour la visualisation des données. Configurez la clé de licence pour IronPDF dans Permission. Initialiser les HoloViews avec un backend Bokeh pour pouvoir créer une visualisation interactive.

Un tableau x allant de 0 à 10, avec 100 points, est créé à l'aide de NumPy ; une autre variable y est le sinus de x. Un graphique linéaire et un graphique en nuage de points sont créés avec des options telles que les noms des couleurs, les étiquettes des axes, etc. 'line_plot + scatter_plot' le fait en fusionnant ces graphiques en un seul sous forme de colonne (.cols(1)), enregistré, avec hv.save(), sous forme de fichier HTML intitulé "visualization.html". IronPDF convertit ensuite le fichier 'visualization.html' en document PDF.

Utilisez la fonction ChromePdfRenderer().RenderHtmlFileAsPdf(), puis pdf_document.SaveAs() pour l'enregistrer sous le nom 'document.pdf'. Ce processus montre clairement comment combiner HoloViews et IronPDF, en convertissant des visualisations interactives en un rapport PDF professionnel.

HoloViews Python (Comment cela fonctionne pour les développeurs) : Figure 5 - Visualisations générées

Conclusion

En résumé, HoloViews avec IronPDF constitue une solution robuste pour générer et distribuer des visualisations basées sur des données sous forme de documents PDF. Grâce à son interface fluide avec des outils de traçage tels que Bokeh et Matplotlib, HoloViews facilite le processus de création de tracés interactifs et personnalisés. Dans ce cas, toute tâche impliquant une analyse de données peut facilement être traduite en rapports visuels informatifs instantanés. IronPDF complète ces capacités par des outils tout aussi puissants permettant de transformer ces visualisations en types de documents PDF de haute qualité.

Lorsqu'ils sont combinés, ils permettent aux utilisateurs de visualiser efficacement les données et de trouver les moyens de partager ou de présenter les résultats dans un format compréhensible par tous. En facilitant le passage de la visualisation des données à l'action, HoloViews et IronPDF améliorent encore la productivité et facilitent la communication dans une myriade de scénarios, tels que la recherche universitaire, les présentations commerciales, la narration axée sur les données et même la visualisation interactive.

Il peut même gérer des solutions très avancées, car IronPDF peut être combiné avec d'autres Iron Software et en quelques jours, vous verrez que le coût de la licence $749 en vaut vraiment la peine.

Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
< PRÉCÉDENT
pyspellchecker Python (Comment ça marche pour les développeurs)
SUIVANT >
SciPy Python (Comment ça marche pour les développeurs)