🎨
Informática para ingeniería 2023-2024
  • Informática para ingeniería
  • Básico python
  • Estructuras de control
    • while
    • for
    • try...except
    • If, else, elif, while, for
    • Ejemplo. Ciclos anidados. Tablas de multiplicar
    • Método abreviado
    • ¿Qué hace zip() ?
  • Secuencias
  • Comparativas: Cadena, lista, tupla y conjunto
    • Ejemplos listas y funciones: Control de temperatura
    • Verificación del NIF
    • Ejemplo listas: control de temperaturas
  • Secuencias: Matriz
    • Definición: Matriz
    • Localizar valores únicos en una matriz
    • Ejemplo matrices: Suma y Multiplicación
    • verificar si una matriz es cuadrada
  • Funciones
    • Definición: funciones
    • Ejemplo de funciones
  • Módulos
    • Módulo. Definición
    • Ejemplos de Módulos: math y random
  • Método abreviado de comprensión de listas...
    • Comprensión de listas
  • Funciones- Matriz-Ejemplos
    • Ejemplo, cálculo de Nómina mensual
    • Ejemplo, cálculo de Nómina mensual (desde el programa principal)
    • Menú, matriz y funciones
    • Localizar valores únicos en una matriz. Usar Funciones
    • Ejemplo funciones, matriz, archivos: Recuento de votos
    • Matrices 2ª Prueba Evaluación Continua. Curso 2018-2019 Parcial. Prof MRD
    • Prueba Evaluación Continua. Curso 2018-2019. Examen 1. Prof. MRD
    • Gestión de una matriz de números enteros
  • Ejecutable
    • Crear un programa ejecutable
  • Archivo (ficheros)
    • Definición: archivos (ficheros)
  • Ejemplos de Matriz y archivos (ficheros)
    • ¿Cómo se multiplican dos matrices?
    • Crear una matriz a partir de un archivo
    • Pedir datos, guardarlos en una matriz y en un archivo
    • Cálcular la media de unos datos almacenados en un archivo
    • Leer archivo, modificar datos y guardarlos
  • Interfaz Gráfica
    • Definición: Interfaz Gráfica de Usuario (IGU)
      • Label
      • Button
      • Radiobutton y Checkbutton
      • LabelFrame
      • Listbox
      • Entry
      • Características comunes de Label, Entry, button, radiobutton checkbutton
      • ttk.Combobox
      • Tamaño de una ventana
    • Ejemplo de Entorno gráfico: RadioButton
    • Visualizar la especialidad y nombre de un alumno
    • Visualizar los datos introducidos
    • Sumar 10 a un número introducido
    • Cálculo del área de un triángulo
    • Cálculo del área de un Círculo. Y dibujo de un círculo
    • ¿Dos números son divisibles?
    • Introducir valores y graficar
    • Ejemplo de botón, lista
  • Ejemplos de interfaz gráfica y archivos
  • Entorno gráficos y archivos
    • Almacenar los datos de un alumno
Con tecnología de GitBook
En esta página
  1. Interfaz Gráfica

Introducir valores y graficar

Permite al usuario introducir valores separados por comas. Estos valores se utilizarán para graficar un gráfico de barras.

import tkinter as tk
from tkinter import messagebox
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg

def graficar():
    # Obtener los datos del campo de entrada y convertirlos en una lista de enteros
    try:
        datos = list(map(int, entry_datos.get().split(',')))
        # Crear una nueva figura con Matplotlib
        fig, ax = plt.subplots()
        ax.bar(range(len(datos)), datos)  # Crear un gráfico de barras
        ax.set_title("Gráfico de Barras")
        ax.set_xlabel("Índice")
        ax.set_ylabel("Valor")

        # Mostrar la figura en el canvas de Tkinter
        canvas = FigureCanvasTkAgg(fig, master=ventana)  # Crear un área de dibujo de Matplotlib en la ventana de Tkinter
        canvas.draw()
        canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=True)

    except ValueError:
        messagebox.showerror("Error", "Por favor, introduce una lista de números enteros separados por comas.")

# Crear la ventana principal de Tkinter
ventana = tk.Tk()
ventana.title("Mi primer Ejercicio: Graficar datos")
# la hacemos de dimensiones fijas
ventana.resizable(False, False)
# ancho y alto de la ventana
ventana.geometry("1050x450") 
# Crear un campo de entrada para los datos
entry_datos = tk.Entry(ventana)
entry_datos.pack(side=tk.TOP, padx=10, pady=10)

# Crear un botón para graficar los datos
boton_graficar = tk.Button(ventana, text="Graficar", command=graficar)
boton_graficar.pack(side=tk.TOP)

ventana.mainloop()

Explicación

Explicación del Código

  1. Importar módulos: Importamos Tkinter, Matplotlib, y FigureCanvasTkAgg que nos permite integrar gráficos de Matplotlib en una ventana de Tkinter.

  2. Función Graficar: Esta función toma los datos ingresados en el campo de entrada, los convierte en enteros, y luego crea un gráfico de barras. Si hay un error en la introducción de datos (por ejemplo, si los datos no son enteros válidos), se muestra un mensaje de error.

  3. Interfaz de Usuario: La ventana tiene un campo de entrada para que los usuarios ingresen sus datos y un botón que, al ser pulsado, llama a la función graficar().

  4. Matplotlib Canvas: FigureCanvasTkAgg es utilizado para dibujar la figura de Matplotlib en la ventana de Tkinter.

Anterior¿Dos números son divisibles?SiguienteEjemplo de botón, lista

Última actualización hace 1 año