Cómo trazar en línea y con Qt - Matplotlib con portátiles IPython/Jupyter

En este tutorial, veremos cómo trazar gráficos en línea usando cuadernos IPyhon/Jupyter, con Matplotlib en Python. Cubriremos cómo trazar externamente usando Qt, así como en línea.

Introducción

Hay varias bibliotecas de visualización de datos diferentes para Python. Sin embargo, de todas las bibliotecas, Matplotlib es fácilmente la más popular y ampliamente utilizada. Con Matplotlib puede crear visualizaciones simples y complejas.

Los cuadernos de Jupyter son uno de los métodos más populares para compartir proyectos, código y visualización de ciencia de datos y análisis de datos. Aunque es posible que sepa cómo visualizar datos con Matplotlib, es posible que no sepa cómo usar Matplotlib en un cuaderno Jupyter.

En este artículo, cubriremos cómo usar un cuaderno de IPython para trazar gráficos de Matplotlib en línea.

También cubrirá el propósito de los métodos mágicos “en línea” y "notebook" de Matplotlib, que se utilizan para configurar los backends de Matplotlib.

Configuración de IPython

Los cuadernos de Jupyter son interactivos y le permiten compartir su trabajo con otros programadores y analistas en un formato reproducible. Aún antes puedes trabajar con un Jupyter notebook necesitas instalarlo.

La forma más sencilla y fácil de instalar un cuaderno Jupyter es con el uso de un administrador de paquetes. Si está utilizando Conda, puede instalar el sistema de archivos Jupyter con el siguiente comando:

1
$ conda install -c conda-forge notebook

Si está utilizando pip, puede instalar Jupyter con este comando en su lugar:

1
$ pip install notebook

Después de instalar Jupyter lab, puede iniciar una instancia de un cuaderno de Jupyter al abrir la línea de comando y usar el siguiente símbolo del sistema con un nombre intuitivo:

1
Jupyter Notebook

Luego puede acceder a su cuaderno Jupyter apuntando su navegador a la siguiente URL:

1
http://localhost:8888/tree?

Importación de datos y visualización de datos

Haremos uso del famoso Conjunto de datos de consejos.

Importaremos Pandas para leer el archivo .csv, así como matplotlib.pyplot para la visualización. Después de eso, podemos construir un diagrama de dispersión simple:

jupyter notebook matplotlib visualization

Así es como normalmente visualizaría los datos en un cuaderno Jupyter. Sin embargo, si compartiste este cuaderno con alguien en su forma actual, tendrían que ejecutar el código ellos mismos para ver las visualizaciones.

Si desea que las visualizaciones se incluyan en el cuerpo del cuaderno, utilice el comando “en línea”, que se refiere a un backend de Matplotlib.

Backends de Matplotlib

Por lo general, la visualización de gráficos implica el uso de la función show() de PyPlot. Con los cuadernos de Jupyter, esto no es necesario ya que los gráficos se muestran después de ejecutar las celdas que contienen el código que los genera. Estos gráficos se muestran en línea de manera predeterminada, lo que significa que se muestran en el propio cuaderno.

Sin embargo, también puede mostrar el gráfico fuera del cuaderno, lo que se puede hacer cambiando el backend de Matplotlib. Jupyter configura automáticamente un backend de Matplotlib, sin embargo, esto se puede anular usando funciones mágicas, que se llaman con el carácter %.

Trazar Matplotlib en una ventana externa usando IPython/Jupyter

Comencemos intentando trazar en una ventana externa desde el cuaderno:

1
%matplotlib qt

Aquí, le hemos dicho al cuaderno Jupyter que use Qt para generar el marco en nuestra máquina local. Esta llamada de función se encuentra antes de la importación de Matplotlib:

jupyter notebook qt plot externally matplotlib

Matplotlib Trazar en línea usando IPython/Jupyter (en línea)

Ciertas versiones de Jupyter pueden no configurar correctamente el backend para Matplotlib y fallar al representar gráficos en línea. En ese caso, el trazado en línea se puede forzar de una de dos maneras.

Puede configurar la función en línea, en lugar de qt para obligar a Jupyter a mostrar los gráficos en línea:

1
%matplotlib inline

Esto ayuda a garantizar que cualquier persona que abra el cuaderno pueda ver las visualizaciones, sin necesidad de volver a ejecutar las celdas de código:

jupyter notebook plot inline matplotlib

Matplotlib Trazar en línea usando IPython/Jupyter (notebook)

El segundo método para representar un diagrama de Matplotlib dentro de un cuaderno es usar el backend notebook:

1
%matplotlib notebook

El uso de %matplotlib notebook crea diagramas interactivos que están incrustados dentro del propio cuaderno, lo que permite a quienes lo ven hacer cosas como cambiar el tamaño de la figura o acercar la figura:

jupyter notebook plot inline matplotlib

Conclusión

En este tutorial, hemos repasado cómo trazar externamente (usando Qt) y en línea (usando las funciones mágicas inline y notebook) en cuadernos IPython/Jupyter.

Si está interesado en Visualización de datos y no sabe por dónde empezar, asegúrese de consultar nuestro paquete de libros en [Visualización de datos en Python](https://gum.co/data-visualization -en-paquete-de-libros-de-python):

Visualización de datos en Python Vuélvase peligroso con la visualización de datos ✅ Garantía de devolución de dinero de 30 días sin preguntas ✅ Principiante a Avanzado ✅ Actualizado periódicamente de forma gratuita (última actualización en abril de 2021) ✅ Actualizado con recursos y guías adicionales

Visualización de datos en Python con Matplotlib y Pandas es un libro diseñado para llevar a los principiantes absolutos a Pandas y Matplotlib, con conocimientos básicos de Python, y permitirles construir una base sólida para el trabajo avanzado con estas bibliotecas, desde gráficos simples. a gráficos 3D animados con botones interactivos.

Sirve como una guía detallada que le enseñará todo lo que necesita saber sobre Pandas y Matplotlib, incluido cómo construir tipos de gráficos que no están integrados en la propia biblioteca.

Visualización de datos en Python, un libro para desarrolladores principiantes e intermedios de Python, lo guía a través de la manipulación de datos simple con Pandas, cubre bibliotecas de trazado centrales como Matplotlib y Seaborn, y le muestra cómo aprovechar las bibliotecas declarativas y experimentales. como Altair. Más específicamente, a lo largo de 11 capítulos, este libro cubre 9 bibliotecas de Python: Pandas, Matplotlib, Seaborn, Bokeh, Altair, Plotly, GGPlot, GeoPandas y VisPy.

Sirve como una guía práctica única para la visualización de datos, en una plétora de herramientas que podría usar en su carrera.