El índice de paquetes de Python tiene bibliotecas para prácticamente todas las necesidades de visualización de datos, desde Pastalog para visualizaciones en tiempo real del entrenamiento de redes neuronales hasta Gaze Parser para la investigación del movimiento ocular. Algunas de estas bibliotecas se pueden utilizar sin importar el campo de aplicación, sin embargo, muchas de ellas se centran intensamente en la realización de una tarea específica.
Sigue una visión general de 11 bibliotecas interdisciplinarias de visualización de datos en Python, desde las más populares hasta las menos.
Matplotlib
La biblioteca Python Matplotlib se utiliza para generar visualizaciones simples pero potentes. Con más de una década de antigüedad, es la biblioteca más utilizada para el trazado de gráficos en la comunidad de Python. Matplotlib se utiliza para trazar una amplia gama de gráficos, desde histogramas hasta gráficos de calor.
Matplotlob es la primera biblioteca de visualización de datos de Python, por lo que muchas otras bibliotecas se construyen sobre Matplotlib y están diseñadas para trabajar en conjunto con el análisis. Bibliotecas como pandas y matplotlib son «envoltorios» sobre Matplotlib que permiten acceder a una serie de métodos de Matplotlib con menos código.
La versatilidad de Matplotlib se puede utilizar para hacer tipos de visualización como:
- Gráficos de dispersión
- Gráficos de barras e histogramas
- Gráficos de líneas
- Gráficos de tartas
- Gráficos de tallo
- Gráficos de contorno
- Gráficos de serpiente
- Espectrogramas
Se pueden crear cuadrículas, etiquetas, leyendas, etc. con facilidad ya que todo es fácilmente personalizable.
Seaborn
Seaborn es una popular biblioteca de visualización de datos que está construida sobre Matplotlib. Los estilos y paletas de colores por defecto de Seaborn son mucho más sofisticados que los de Matplotlib. Seaborn pone la visualización en el centro de la comprensión de cualquier dato. Seaborn es una biblioteca de alto nivel – es más fácil de generar ciertos tipos de gráficos, incluyendo mapas de calor, series de tiempo, y gráficos de violín.
ggplot
Ggplot es una biblioteca de visualización de Python basada en ggplot2 de R y la Gramática de los Gráficos. Puedes construir gráficos usando una gramática de alto nivel sin preocuparte de los detalles de implementación. Ggplot funciona de forma diferente a Matplotlib: permite a los usuarios superponer componentes para crear un gráfico completo. Por ejemplo, el usuario puede empezar con los ejes, y luego añadir puntos, luego una línea, una línea de tendencia, etc. La Gramática de los Gráficos ha sido aclamada como un método «intuitivo» para trazar, sin embargo, los usuarios experimentados de Matplotlib podrían necesitar tiempo para adaptarse a esta nueva mentalidad.
Bokeh
Bokeh, nativo de Python también se basa en La Gramática de los Gráficos como ggplot. También soporta streaming, y datos en tiempo real. La única propuesta de venta es su capacidad para crear gráficos interactivos, listos para la web, que pueden fácilmente salir como objetos JSON, documentos HTML, o aplicaciones web interactivas.
Bokeh tiene tres interfaces con diferentes grados de control para dar cabida a diferentes tipos de usuarios. El nivel más alto es para crear gráficos rápidamente. Incluye métodos para crear gráficos comunes como gráficos de barras, gráficos de caja e histogramas. El nivel intermedio permite al usuario controlar los elementos básicos de cada gráfico (por ejemplo, los puntos de un gráfico de dispersión) y tiene la misma especificidad que Matplotlib. El nivel inferior está orientado a desarrolladores e ingenieros de software. No tiene valores predeterminados y requiere que el usuario defina cada elemento del gráfico.
Plotly
Aunque Plotly es ampliamente conocido como una plataforma en línea para la visualización de datos, muy poca gente sabe que se puede acceder a él desde un cuaderno de Python. Al igual que Bokeh, la fuerza de Plotly radica en hacer gráficos interactivos, y ofrece gráficos de contorno, que no se pueden encontrar en la mayoría de las bibliotecas.
Pygal
Pygal, al igual que Plotly y Bokeh, ofrece gráficos interactivos que se pueden incrustar en un navegador web. La capacidad de producir gráficos como SVG es su principal diferenciador. Para trabajar con conjuntos de datos más pequeños, los SVGs estarán bien. Sin embargo, para los gráficos con cientos de miles de puntos de datos, se vuelven lentos y tienen problemas de representación.
Es fácil crear un gráfico de aspecto agradable con sólo unas pocas líneas de código ya que cada tipo de gráfico está empaquetado en un método y los estilos incorporados son grandes.
Altair
Altair es una biblioteca Python de visualización estadística declarativa basada en Vega-Lite. Sólo es necesario mencionar los enlaces entre las columnas de datos a los canales de codificación, como el eje x, el eje y, el color, etc. y el resto de los detalles de trazado se manejan automáticamente. Esto hace que Altair sea sencillo, amigable y consistente. Es fácil diseñar visualizaciones efectivas y hermosas con una cantidad mínima de código usando Altair.
Geoplotlib
Geoplotlib es una caja de herramientas utilizada para trazar datos geográficos y crear mapas. Se puede utilizar para crear una variedad de tipos de mapas, como coropletas, mapas de calor y mapas de densidad de puntos. Es necesario instalar Pyglet (una interfaz de programación orientada a objetos) para utilizar Geoplotlib.
Geoplotlib reduce la complejidad del diseño de visualizaciones proporcionando un conjunto de herramientas incorporadas para las tareas más comunes, como la visualización de la densidad, los gráficos espaciales y los archivos de forma.
Dado que la mayoría de las bibliotecas de visualización de datos de Python no ofrecen mapas, es bueno tener una biblioteca dedicada a ellos.
Gleam
Gleam está inspirado en el paquete Shiny de R. Permite al usuario convertir cualquier análisis en aplicaciones web interactivas utilizando únicamente scripts de Python. Los usuarios de Gleam no necesitan saber HTML, CSS o JavaScript para hacerlo. Gleam funciona con cualquier biblioteca de visualización de datos de Python. Una vez que los usuarios han creado un gráfico, pueden construir campos sobre él para filtrar y ordenar los datos.
Missingno
Tratar con los datos que faltan es engorroso. La integridad de un conjunto de datos puede medirse rápidamente con Missingno, en lugar de buscar minuciosamente en una tabla. El usuario puede filtrar y ordenar los datos en función de la compleción o detectar correlaciones con un mapa de calor o un dendrograma.
Piel
Piel está diseñada para trabajar con todos los tipos de datos y produce gráficos como SVG, de modo que se pueden escalar sin perder calidad de imagen. El creador de Leather, Christopher Groskopf, lo explica mejor: «Leather es la biblioteca de gráficos de Python para quienes necesitan gráficos ahora y no les importa que sean perfectos». Como esta biblioteca es relativamente nueva, parte de la documentación está todavía en proceso. Los gráficos que se pueden hacer son bastante básicos-pero esa es la intención.
Hay una amplia gama de herramientas de visualización, con una enorme diversidad, dependiendo del enfoque de la tarea en cuestión disponible para Python. Esto se refleja en el gran número de bibliotecas disponibles. Es imperativo que los usuarios tengan en cuenta las diferencias entre los enfoques y sus implicaciones antes de centrarse en un enfoque particular.