import gradio as gr import matplotlib.pyplot as plt import io import base64 # Definir las variables a = 35 b = 40 c = 25 # Función para crear el gráfico de barras def create_bar_chart(a, b, c): # Crear el gráfico de barras labels = ['A', 'B', 'C'] values = [a, b, c] fig, ax = plt.subplots() ax.bar(labels, values, color=['#ff9999','#66b3ff','#99ff99']) # Añadir etiquetas y título ax.set_ylabel('Valores') ax.set_title('Gráfico de Barras') # Guardar el gráfico en un buffer de memoria buf = io.BytesIO() plt.savefig(buf, format='png') buf.seek(0) img_base64 = base64.b64encode(buf.read()).decode('utf-8') buf.close() plt.close() # Cerrar la figura para liberar recursos return img_base64 # Función para utilizar en Gradio def gradio_interface(a, b, c): img_base64 = create_bar_chart(a, b, c) return img_base64 # Configurar la interfaz de Gradio demo = gr.Interface( fn=gradio_interface, inputs=[ gr.Number(label="Valor A", default=a), gr.Number(label="Valor B", default=b), gr.Number(label="Valor C", default=c) ], outputs=gr.Image(label="Gráfico de Barras"), title="Generador de Gráficos de Barras", description="Genera un gráfico de barras basado en los valores de A, B y C" ) demo.launch(share=True)