Desplácese por el índice de paquetes de Python y encontrará bibliotecas para prácticamente cualquier necesidad de visualización de datos, desde GazeParser para la investigación del movimiento ocular hasta pastalog para la visualización en tiempo real del entrenamiento de redes neuronales. Y aunque muchas de estas bibliotecas se centran intensamente en la realización de una tarea específica, algunas pueden ser utilizadas sin importar su campo.
Esta lista es una visión general de 10 bibliotecas interdisciplinarias de visualización de datos en Python, desde las más conocidas hasta las más oscuras. Mode Python Notebooks soporta tres bibliotecas de esta lista – matplotlib, Seaborn y Plotly – y más de 60 otras que puedes explorar en nuestra página de soporte de Notebook.
Esperamos que estas listas te inspiren, y si quieres añadir una biblioteca que no está en la lista, utiliza nuestras instrucciones para instalar bibliotecas adicionales o envía una nota al éxito modeanalytics .
- Matplotlib
- Seaborn
- ggplot
- Bokeh
- pygal
- Plotly
- geoplotlib
- Gleam
- missingno
- Leather
matplotlib
Dos histogramas (matplotlib)
matplotlib es la O.G. de las bibliotecas de visualización de datos de Python. A pesar de tener más de una década de antigüedad, sigue siendo la biblioteca más utilizada para trazar en la comunidad de Python. Fue diseñada para parecerse mucho a MATLAB, un lenguaje de programación propietario desarrollado en la década de 1980.
Debido a que matplotlib fue la primera biblioteca de visualización de datos de Python, muchas otras bibliotecas están construidas sobre ella o diseñadas para trabajar en conjunto con ella durante el análisis. Algunas bibliotecas como pandas y Seaborn son «envoltorios» sobre matplotlib. Permiten acceder a una serie de métodos de matplotlib con menos código.
Aunque matplotlib es bueno para obtener una idea de los datos, no es muy útil para crear gráficos de calidad de publicación rápida y fácilmente. Como señala Chris Moffitt en su visión general de las herramientas de visualización de Python, matplotlib «es extremadamente potente, pero con esa potencia viene la complejidad»
matplotlib ha sido criticado durante mucho tiempo por sus estilos por defecto, que tienen una sensación distintiva de los años 90. El próximo lanzamiento de matplotlib 2.0 promete muchos cambios de estilo nuevos para solucionar este problema.
Creado por: John D. Hunter, disponible en Mode
Donde aprender más: matplotlib.org
Prueba matplotlib en Mode.
Seaborn
Violinplot (Michael Waskom)
Seaborn aprovecha el poder de matplotlib para crear hermosos gráficos en unas pocas líneas de código. La diferencia clave es los estilos y paletas de colores por defecto de Seaborn, que están diseñados para ser más estéticos y modernos. Como Seaborn está construido sobre matplotlib, necesitarás conocer matplotlib para ajustar los valores por defecto de Seaborn.
Creado por: Michael Waskom, disponible en Mode
Donde aprender más: http://web.stanford.edu/~mwaskom/software/seaborn/index.html
Prueba Seaborn en Mode.
ggplot
Pequeños múltiplos (ŷhat)
ggplot está basado en ggplot2, un sistema de trazado de R, y en conceptos de La Gramática de los Gráficos. ggplot funciona de forma diferente a matplotlib: te permite poner componentes en capas para crear un gráfico completo. Por ejemplo, puedes empezar con los ejes, luego añadir puntos, luego una línea, una línea de tendencia, etc. Aunque la Gramática de los Gráficos ha sido alabada como un método «intuitivo» para trazar, los usuarios experimentados de matplotlib podrían necesitar tiempo para adaptarse a esta nueva mentalidad.
Según su creador, ggplot no está diseñado para crear gráficos altamente personalizados. Sacrifica la complejidad por un método más simple de trazado.
ggplot está estrechamente integrado con pandas, por lo que es mejor almacenar sus datos en un DataFrame cuando se utiliza ggplot.
Creado por: ŷhat
Donde aprender más: http://ggplot.yhathq.com/
Bokeh
Estadísticas meteorológicas interactivas para tres ciudades (Continuum Analytics)
Al igual que ggplot, Bokeh está basado en The Grammar of Graphics, pero a diferencia de ggplot, es nativo de Python, no portado desde R. Su fuerza radica en la capacidad de crear gráficos interactivos, listos para la web, que pueden ser fácilmente emitidos como objetos JSON, documentos HTML o aplicaciones web interactivas. Bokeh también es compatible con la transmisión de datos en tiempo real.
Bokeh ofrece tres interfaces con diferentes niveles de control para adaptarse 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 medio tiene la misma especificidad que matplotlib y permite controlar los elementos básicos de cada gráfico (los puntos de un gráfico de dispersión, por ejemplo). El nivel más bajo está orientado a los desarrolladores e ingenieros de software. No tiene valores predeterminados y requiere que usted defina cada elemento del gráfico.
Creado por: Continuum Analytics
Donde aprender más: http://bokeh.pydata.org/en/latest/
pygal
Box plot (Florian Mounier)
Al igual que Bokeh y Plotly, pygal ofrece gráficos interactivos que se pueden incrustar en el navegador web. Su principal diferenciador es la capacidad de salida de gráficos como SVGs. Mientras trabajes con conjuntos de datos pequeños, los SVG te servirán. Pero si estás haciendo gráficos con cientos de miles de puntos de datos, tendrán problemas de representación y se vuelven lentos.
Como cada tipo de gráfico está empaquetado en un método y los estilos incorporados son bonitos, es fácil crear un gráfico de aspecto agradable en unas pocas líneas de código.
Creado por: Florian Mounier
Donde aprender más: http://www.pygal.org/en/latest/index.html
Plotly
Gráfico de líneas (Plotly)
Puede que conozcas Plotly como una plataforma online para la visualización de datos, pero ¿sabías también que puedes acceder a sus capacidades desde un cuaderno de Python? Al igual que Bokeh, el fuerte de Plotly es hacer gráficos interactivos, pero ofrece algunos gráficos que no encontrarás en la mayoría de las bibliotecas, como gráficos de contorno, dendogramas y gráficos 3D.
Creado por: Plotly, disponible en Mode
Donde aprender más: https://plot.ly/python/
Prueba Plotly en Mode.
geoplotlib
Choropleth (Andrea Cuttone)
geoplotlib es una caja de herramientas para crear mapas y trazar datos geográficos. Se puede utilizar para crear una variedad de tipos de mapas, como coropletas, mapas de calor y mapas de densidad de puntos. Es necesario tener instalado Pyglet (una interfaz de programación orientada a objetos) para utilizar geoplotlib. Sin embargo, ya que la mayoría de las bibliotecas de visualización de datos de Python no ofrecen mapas, es bueno tener una biblioteca dedicada exclusivamente a ellos.
Creado por: Andrea Cuttone
Donde aprender más: https://github.com/andrea-cuttone/geoplotlib
Gleam
Gráfico de dispersión con línea de tendencia (David Robinson)
Gleam está inspirado en el paquete Shiny de R. Permite convertir los análisis en aplicaciones web interactivas utilizando únicamente scripts de Python, por lo que no es necesario conocer otros lenguajes como HTML, CSS o JavaScript. Gleam funciona con cualquier biblioteca de visualización de datos de Python. Una vez que hayas creado un gráfico, puedes construir campos sobre él para que los usuarios puedan filtrar y ordenar los datos.
Creado por: David Robinson
Donde aprender más: https://github.com/dgrtwo/gleam
missingno
Matriz de nulidad (Aleksey Bilogur)
Tratar con los datos que faltan es un dolor. missingno le permite medir rápidamente la integridad de un conjunto de datos con un resumen visual, en lugar de recorrer una tabla. Puede filtrar y ordenar los datos en función de la compleción o detectar correlaciones con un mapa de calor o un dendrograma.
Creado por: Aleksey Bilogur
Donde aprender más: https://github.com/ResidentMario/missingno
Piel
Rejilla de gráficos con escalas consistentes (Christopher Groskopf)
El creador de Piel, Christopher Groskopf, lo dice mejor: «Leather es la biblioteca de gráficos de Python para aquellos que necesitan gráficos ahora y no les importa que sean perfectos». Está diseñada para trabajar con todos los tipos de datos y produce gráficos como SVG, por lo que se pueden escalar sin perder calidad de imagen. Como esta biblioteca es relativamente nueva, parte de la documentación está todavía en proceso. Los gráficos que puedes hacer son bastante básicos-pero esa es la intención.
Creado por: Christopher Groskopf
Donde aprender más: https://leather.readthedocs.io/en/latest/index.html
Otras grandes lecturas sobre la visualización de datos de Python
Hay una tonelada de grandes evaluaciones y descripciones de las bibliotecas de visualización de datos de Python por ahí. Echa un vistazo a algunos de nuestros favoritos:
- Un gráfico, doce bibliotecas de gráficos (Lisa Charlotte Rost)
- Visión general de las herramientas de visualización de Python (Practical Business Python)
- Visualización de datos de Python: Comparación de 7 herramientas (Dataquest.io)