Consejos y trucos para organizar visualizaciones de Jupyter Notebook |  de Mateo Andrés Moreno |  enero de 2024

Optimice su flujo de trabajo de ciencia de datos automatizando la salida de matplotlib, con 1 línea de código. Así es cómo.

Nombrar las cosas es difícil. Después de un día bastante largo, todos terminamos con me gusta altamente descriptivos como “graph7(1)_FINAL(2).png” y “output.pdf” ¿Parecer familiar?

Podemos hacerlo mejor y, de hecho, con bastante facilidad.

Cuando utilizamos “orientado a datos”nacido en el mar-esque”, los ingredientes para un nombre de archivo descriptivo están todos ahí. Una llamada típica se ve así,

sns.scatterplot(data=tips, x="total_bill", y="tip", hue="time")

Ahí mismo sabemos que tenemos “total_bill” sobre el X ejetimecodificado por coloresetc. ¿Y qué si usáramos el nombre de la función de trazado y esos semánticos claves de columna para organizar la salida para nosotros?

Así es como se ve ese flujo de trabajo, usando el teeplot herramienta.

import seaborn as sns; import teeplot as tp
tp.save = {".eps": True, ".pdf": True} # set custom output behavior
tp.tee(sns.scatterplot,
data=sns.load_data("tips"), x="total_bill", y="tip", hue="time")

teeplots/hue=time+viz=scatterplot+x=total-bill+y=tip+ext=.eps
teeplots/hue=time+viz=scatterplot+x=total-bill+y=tip+ext=.pdf

En realidad hemos hecho tres cosas en este ejemplo – 1) Representamos la trama en el cuaderno y 2) Hemos guardado nuestra visualización en un archivo con un nombre de archivo significativo y 3) hemos Enganchó nuestra visualización a un marco donde los resultados del cuaderno se pueden gestionado a nivel global (en este caso, habilitando eps/pdf producción).

Este artículo explicará cómo aprovechar el teeplot Paquete Python para organizarse mejor y liberar su carga de trabajo mental para concentrarse en cosas más interesantes.

Soy el autor principal y mantenedor del proyecto, que he utilizado en mi propio flujo de trabajo durante varios años y lo encontré lo suficientemente útil como para empaquetarlo y compartirlo más ampliamente con la comunidad. teeplot Es de código abierto bajo la licencia MIT.

teeplot está diseñado para simplificar el trabajo con visualizaciones de datos creadas con bibliotecas como matplotlib, nacido en el mary pandas. Actúa como un contenedor alrededor de sus llamadas de trazado para manejar la gestión de salida por usted.

flujo de trabajo de teeplot en acción

He aquí cómo usar teeplot en 3 pasos,

  1. Elija su función de trazado: Comience seleccionando su función de trazado preferida, ya sea de matplotlib, nacido en el mar, pandasetc. o uno que haya escrito usted mismo.
  2. Agregue sus argumentos de trama: Pase su función de trazado como primer argumento para teeseguido de los argumentos que desea utilizar para su visualización.
  3. Trazado y guardado automático: teeplot captura su función de trazado y sus argumentos, ejecuta el trazado y luego se encarga de gestionar los resultados del trazado por usted.

¡Eso es todo!

A continuación, veamos 3 breves ejemplos que demuestran: a) uso básico, b) posprocesamiento personalizadoy C) funciones de trazado personalizadas.

En este ejemplo, pasamos un DataFrame dffunción miembro de df.plot.box como nuestro trazador y dos claves semánticas: “edad” y “género”. teeplot se encarga del resto.

# adapted pandas.pydata.org/docs/reference/api/pandas.DataFrame.plot.box.html
import pandas as pd; from teeplot import teeplot as tp

age_list = [8, 10, 12, 14, 72, 74, 76, 78, 20, 25, 30, 35, 60, 85]
df = pd.DataFrame({"gender": list("MMMMMMMMFFFFFF"), "age": age_list})

tp.tee(df.plot.box, # plotter...
column="age", by="gender", figsize=(4, 3)) # ...forwa

teeplots/por=género+columna=edad+viz=caja+ext=.pdf
teeplots/por=género+columna=edad+viz=caja+ext=.png