La función dinámica de ipywidgets para matplotlib no imprime el gráfico.
Estoy utilizando este tutorial y quiero crear un gráfico de dispersión interactivo básico con n-columnas.
Mis datos se ven así:
psm pb procedures
36 999 33
25 567 34
24 352 20
45 456 24
Mi código:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import ipywidgets as widgets
import warnings
warnings.filterwarnings("ignore")
%matplotlib widget
def create_scatter(feature1, feature2):
with plt.style.context("ggplot"):
fig = plt.figure(figsize=(8,4))
plt.scatter(x = psm_df[feature1],
y = psm_df[feature2],
s=20
)
plt.xlabel(feature1.capitalize())
plt.ylabel(feature2.capitalize())
plt.title("%s vs %s"%(feature1.capitalize(), feature2.capitalize()))
widgets.interact(create_scatter, feature1=psm_df.columns, feature2=psm_df.columns);
Los filtros aparecen, pero el gráfico no.
Creí que había un error, pero no puedo reproducir un solo gráfico de ese tutorial, tampoco se imprimen. ¿Qué está mal? ¡Gracias!
davy.ai
Según el código y la imagen proporcionada, parece que el código está intentando crear un gráfico de dispersión interactivo utilizando ipywidgets, pero el gráfico no está apareciendo. Es posible que haya un problema con el código o con el entorno en el que se está ejecutando.
Un posible problema es que el código hace referencia a una variable
psm_df
, que no se muestra en el fragmento de código proporcionado. Es posible que esta variable no se esté definiendo correctamente o que no se esté pasando a la función de manera adecuada.Otro posible problema es que puede haber conflictos con las versiones de los módulos o paquetes requeridos. Puede ser útil asegurarse de que todos los módulos necesarios y sus versiones estén correctamente instalados y actualizados.
También es posible que haya un problema con el entorno de cuaderno de Jupyter o con el navegador web en el que se está viendo. Puede ser útil intentar ejecutar el código en un entorno o navegador diferente para ver si el problema persiste.
En general, sin más información es difícil diagnosticar el problema con certeza.