AYUDA DE PYTHON

HoloViews Python (Cómo funciona para desarrolladores)

Actualizado agosto 13, 2024
Compartir:

Introducción

HoloViews es una biblioteca flexible de Python que hace que la visualización de datos sea real y fácil. Gracias a su estrecha integración en la pila de computación científica, ayuda a los usuarios a crear visualizaciones flexibles con muy pocas líneas de código en apoyo de backends como Matplotlib, Bokeho Plotly. El objetivo de los desarrolladores era crear Holoviews para que puedas dejar de trazar tus datos manualmente. Es fácil crear visualizaciones interactivas y altamente personalizables que encajarán a la perfección en los flujos de trabajo de análisis de datos.

IronPDF es una biblioteca de Python utilizada para crear, editar y manipular documentos PDF. Permite realizar conversiones de HTML a PDF, editar contenidos, implementar la seguridad y añadir anotaciones y formularios. Cuando conecte HoloViews con IronPDF, estará a un paso de obtener gráficos de datos interactivos y perspicaces e incrustarlos en informes PDF profesionales generados con IronPDF.

Esta integración beneficia especialmente a analistas de datos, científicos, profesionales de la empresa y a quienes necesitan comunicar los resultados de sus análisis con eficacia y claridad.

¿Qué es Holoviews?

El módulo Python, HoloViewsha sido desarrollado pensando en la facilidad y elegancia de la visualización de datos. Plantea términos declarativos de alto nivel de tal forma que los usuarios no tienen que preocuparse por cómo se implementarán las cosas, sino concentrarse en lo que quieren visualizar. HoloViews es flexible para cualquier tipo y estructura de datos; se integra fácilmente con la pila de computación científica y otras bibliotecas como Pandas, Dask o XArray.

HoloViews Python (Cómo funciona para desarrolladores): Figura 1 - Página web del módulo HoloViews

Esto se debe al hecho de que soporta varios back-ends de gráficos, como Matplotlib, Bokeh, y Plotly, de una manera que hace que sea fácil cambiar entre varias bibliotecas de visualización. Holoviews también tiene ventajas en los análisis exploratorios de datos al crear gráficos interactivos para anotar sus datos.

Esto es lo que hace HoloViews: abstraer todos los problemas de la visualización de datos para que los usuarios puedan convertir la enorme cantidad de información de que disponen en imágenes bellas y significativas con poca o ninguna codificación. De este modo, se ha convertido en una de las herramientas más importantes de que dispone un científico o analista de datos.

Características de las holopistas

La razón por la que HoloViews es fuerte en el apoyo a las visualizaciones es que incorpora las siguientes funcionalidades, entre otras:

Declaración de sintaxis: HoloViews utiliza una sintaxis declarativa de alto nivel, permitiendo a los usuarios especificar fácilmente lo que quieren ver exactamente, haciendo que la creación de visualizaciones complejas sea sencilla.

Integración nativa: Soporta de forma nativa una amplia variedad de tipos y estructuras de datos, gracias a la estrecha integración con bibliotecas dentro de la pila de computación científica como Pandas, Dask, XArray, y más.

Soporte de librerías externas: Soporta una serie de librerías, incluyendo Matplotlib, Bokeh y Plotly. Esta flexibilidad permite a los usuarios cambiar entre varias bibliotecas de visualización sin cambiar una sola línea de código.

Interactividad: HoloViews proporciona gráficos interactivos para una visualización dinámica, permitiendo a los usuarios explorar e interpretar los datos de forma interactiva.

Extensibilidad: Ofrece un amplio conjunto de opciones para personalizar las visualizaciones y es compatible con numerosos backends, lo que permite a los usuarios ampliar y ajustar sus visualizaciones según sus necesidades.

Facilidad de uso: La API de alto nivel de HoloViews reduce la cantidad de código necesario para crear visualizaciones de grandes conjuntos de datos, lo que permite a los usuarios centrarse más en el análisis de datos que en las complejidades de la creación de gráficos.

Composibilidad: HoloViews permite la creación de gráficos complejos y ricos, centrándose en hacer la visualización fluida y sencilla. Los usuarios pueden combinar sin esfuerzo componentes sencillos para crear sofisticadas visualizaciones.

Data Pipelines: HoloViews simplifica el proceso de construcción de intrincados flujos de trabajo para el procesamiento y presentación de datos.

Rico ecosistema: Como parte del ecosistema HoloViz, HoloViews ofrece un conjunto de herramientas para la visualización de datos y el desarrollo de aplicaciones. Funciona bien con otras herramientas robustas del ecosistema, como Panel y Datashader.

Creación y configuración de Holoviews

La configuración de HoloViews se realiza con los siguientes pasos:

Instalar HoloViews y dependencias

En primer lugar, descargue e instale HoloViews y todas sus dependencias utilizando los siguientes comandos pip:

pip install holoviews
pip install bokeh
pip install holoviews
pip install bokeh
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Uso de HoloViews para generar gráficos

#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')
#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')
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

El fragmento de código anterior generará y personalizará algunos de los elementos gráficos de estas visualizaciones de datos en HoloViews, y luego los compondrá en un único diseño. Haga algunas importaciones e inicie HoloViews para usar el backend Bokeh para que los gráficos puedan ser interactivos. Generar un conjunto de datos con NumPy mediante la creación de una matriz de valores x y sus correspondientes valores de seno y.

Este script producirá tres tipos de gráficos: un gráfico de líneas de una onda sinusoidal, un gráfico de dispersión con los puntos de datos exactos y un histograma de la distribución de los valores sinusoidales. Todos se personalizan con un título, etiquetado de ejes y coloración mediante el método `opts`.

HoloViews Python (Cómo funciona para desarrolladores): Figura 2 - Visualizaciones resultantes: Gráficos lineales y de dispersión

HoloViews Python (Cómo funciona para desarrolladores): Figura 3 - Visualizaciones resultantes: Histograma

Esto apila todas las parcelas en una columna. Por último, mostramos el diseño sin fisuras de la visualización y, a continuación, utilizamos hv.save para guardarla junto con todo su contenido en un archivo HTML llamado 'visualization.html'. Con HoloViews, todo el proceso, desde la creación hasta el diseño y guardado de una visualización interactiva, resulta muy sencillo.

Combinación de Holoviews y IronPDF

Ahora aprenderá a utilizar HoloViews para la visualización de datos y IronPDF para crear documentos PDF con estas visualizaciones. Un conjunto de instrucciones le guiará a través de la instalación de estas bibliotecas, la creación de visualizaciones, y luego la generación de archivos PDF a partir de estas visualizaciones utilizando HoloViews y IronPDF.

¿Qué es IronPDF?

HoloViews Python (Cómo funciona para desarrolladores): Figura 4 - Página web de IronPDF

Utilización del módulo Python IronPDFes posible realizar diferentes tareas avanzadas y programáticas dentro de un documento PDF. Es una herramienta muy robusta y completa que crea, edita y lee archivos PDF. La creación de documentos directamente a partir de archivos HTML ayuda a restaurar la usabilidad de los documentos PDF creados y modificados previamente.

Al utilizar IronPDF se conseguirá una mayor compatibilidad y la creación de atractivos informes en PDF. Las aplicaciones que dependen de la creación y actualización dinámica de PDF se beneficiarán especialmente de ello. También es una biblioteca con una vasta y comprensible página de documentación con amplios ejemplos que te ayudarán en el camino.

Conversión de HTML a PDF

Con la documentación de IronPDF, cualquier dato HTML puede generarse en un documento PDF en un momento. Uno puede aprovechar la gran mayoría de los últimos elementos que ahora forman parte de HTML5, CSS3 y Javascript para crear publicaciones en PDF creativas y cautivadoras directamente a partir de material web.

Generar y editar PDF

Puede, con un poco de programación informática, crear mediante programas nuevos documentos PDF que incluyan texto, gráficos y tablas, entre otras muchas características. Con IronPDF también puede abrir previamente documentos ya preparados en su navegador y editarlos posteriormente. Siempre se puede añadir, modificar o eliminar contenido de un documento PDF.

Diseño y estilismo complejos

Se permiten diseños complejos con múltiples fuentes, colores y otros elementos de diseño porque los PDF contienen un estilo implícito. Supongamos que en un PDF hay contenido dinámico que puede cambiar. Es evidente que es mucho más fácil presentar los datos en el formato HTML por defecto y no en JavaScript.

Instalar IronPDF

Puede instalar la biblioteca IronPDF mediante pip con los siguientes comandos:

pip install ironpdf
pip install ironpdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'pip install ironpdf
VB   C#

Generar gráficos en PDF con Holoviews

He aquí un ejemplo de cómo utilizar HoloViews para construir visualizaciones sencillas.

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)
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)
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

El código anterior integra IronPDF con HoloViews en la creación de visualizaciones y luego las convierte en documentos PDF. Comienza silenciando las advertencias e importando los módulos necesarios: ironpdf para renderizar PDFs, numpy para la generación de algunos datos para graficar, y holoviews para la visualización de datos. Configure la clave de licencia para IronPDF en Permisos. Inicializar HoloViews con un backend Bokeh para poder crear una visualización interactiva.

Se crea una matriz x que va de 0 a 10, con 100 puntos, utilizando NumPy; otra variable y es el seno de x. Se crean un gráfico de líneas y un gráfico de dispersión con opciones que incluyen nombres de colores, etiquetas de ejes, etc. 'line_plot + scatter_plot' hace esto mediante la fusión de estas parcelas en una en forma de columna (.cols(1))con hv.save(), como un archivo HTML titulado "visualization.html". A continuación, IronPDF convierte 'visualization.html' en un documento PDF.

Utilice la función ChromePdfRenderer()renderHtmlFileAsPdf() y luego pdf_document.SaveAs() para guardarlo como 'document.pdf' Claramente, este proceso muestra cómo combinar HoloViews y IronPDF, convirtiendo visualizaciones interactivas en un informe PDF profesional.

HoloViews Python (Cómo funciona para desarrolladores): Figura 5 - Visualizaciones resultantes

Conclusión

En resumen, HoloViews con IronPDF constituye una solución robusta para generar y distribuir visualizaciones basadas en datos en forma de documentos PDF. Aprovechando su interfaz fluida con herramientas de trazado como Bokeh y Matplotlib, HoloViews facilita el proceso de creación de trazados interactivos y personalizados. En tal caso, cualquier trabajo que implique el análisis de datos puede traducirse fácilmente en informes visuales informativos instantáneos. IronPDF complementa estas capacidades con herramientas igualmente potentes para convertir dichas visualizaciones en tipos de documentos PDF de alta calidad.

Cuando se combinan, permiten a los usuarios visualizar eficazmente los datos y encontrar la forma de compartir o presentar los resultados en un formato comprensible para todos. Al facilitar el paso de la visualización de datos a la acción, HoloViews e IronPDF mejoran aún más la productividad y facilitan la comunicación en múltiples escenarios, como la investigación académica, las presentaciones empresariales, la narración de historias basadas en datos e incluso la visualización interactiva.

Puede incluso manejar soluciones muy avanzadas, ya que IronPDF puede combinarse con otros **IronSoftware y en pocos días verás que los 749 dólares de la licencia merecen la pena.

< ANTERIOR
pyspellchecker Python (Cómo funciona para desarrolladores)
SIGUIENTE >
SciPy Python (Cómo funciona para desarrolladores)

¿Listo para empezar? Versión: 2024.8 acaba de salir

Instalación pip gratuita View Licenses >