0% encontró este documento útil (0 votos)
90 vistas19 páginas

Gráficos en Python con Tkinter y Matplotlib

Este documento explica los conceptos básicos de Tkinter y Matplotlib para la creación de interfaces gráficas y gráficos en Python. Introduce Tkinter como una biblioteca para desarrollo de interfaces gráficas, y proporciona ejemplos de cómo crear widgets, posicionarlos y agregar funcionalidad. Luego, explica cómo instalar e importar Matplotlib para generar gráficos, mostrando diversos ejemplos como gráficos de líneas, de barras, animados y más. El documento proporciona información fundamental sobre las bibliotecas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
90 vistas19 páginas

Gráficos en Python con Tkinter y Matplotlib

Este documento explica los conceptos básicos de Tkinter y Matplotlib para la creación de interfaces gráficas y gráficos en Python. Introduce Tkinter como una biblioteca para desarrollo de interfaces gráficas, y proporciona ejemplos de cómo crear widgets, posicionarlos y agregar funcionalidad. Luego, explica cómo instalar e importar Matplotlib para generar gráficos, mostrando diversos ejemplos como gráficos de líneas, de barras, animados y más. El documento proporciona información fundamental sobre las bibliotecas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Tema 9 GRAFICOS EN PYTHON

1) Concepto de Tk
tkinter es un binding de la biblioteca gráfica Tcl/Tk para el lenguaje de programación Python, Tk se encuentra disponible para varios lenguajes de programación
entre los cuales se encuentra Python con el nombre de tkinter. Este no es más que una capa de esta librería para el lenguaje Python con lo cual usar Tk en
otro lenguaje no nos supondrá un inconveniente.
Un binding, en el campo de la programación, es la adaptación de una biblioteca para ser usada en un lenguaje de programación distinto de aquél en el que
ha sido escrita.
2) Posicionamiento
Los relativos son porcentajes.
from tkinter import Tk, Label, Button, Entry
form=Tk()
form.title('Titulo')
form.geometry('400x200')
lbl1 = Label(form,text='Primer numero : ')
lbl1.place(x=10,y=10, width=100,height=30)
lbl2 = Label(form,text='Segundo numero : ')
lbl2.place(x=10,y=50, width=100,height=30)
lbl3 = Label(form,text='Resultado : ')
lbl3.place(x=10,y=120, width=100,height=30)
txt1 = Entry(form, bg='Dark turquoise')
txt1.place(x=120,y=10,width=100,height=30)
txt2 = Entry(form, bg='Dark turquoise')
txt2.place(x=120,y=50,width=100,height=30)
txt3 = Entry(form, bg='Dark turquoise')
txt3.place(x=120,y=120,width=100,height=30)
def suma():
num1 = txt1.get()
num2 = txt2.get()
res = int(num1)+int(num2)
txt3.delete(0,'end')
txt3.insert(0,res)
btn1 = Button(form,text='SUMAR', command=suma)
btn1.place(x=250,y=80,width=100,height=30)
form.mainloop()
3) Gráficos
Es necesario tener el módulo Matplotlib,

La Instalación de Matplotlib, consta de los siguientes pasos:

a) Iniciar la ventana comandos, teclas WIN + R, escrbir cmd

b) Escribir el comando: C:\...\python310\python.exe –m pip install --upgrade pip

c) Escribir el comando: C:\... python310\python –m pip install matplotlib,


luego se observará la siguiente pantalla de instalación.
Con esta ultima pantalla, el módulo matplotlib esta instalado.
Ejemplo 1)

from matplotlib import pyplot as plt


x = [1,2,3]
y = [4.3 , 5, 7)
plt.plot( x, f )
plt.show()
Ejemplo 2)

Ejemplo 3)
import matplotlib.pyplot as plt
x=[1999, 2001, 2003, 2005, 2007, 2009]
y=[45, 52, 60, 72, 70, 75]
plt.plot(x,y , marker='o', linestyle='--', color='g' )
plt.xlabel('Años')
plt.ylabel('publicaciones')
plt.title('Publicacion por años')
plt.show()

Ejemplo 4) Figuras:

import tkinter as tk
from tkinter import Canvas
form=tk.Tk()
canvas=Canvas(form, width=640, height=480)
canvas.pack()

canvas.create_line(10,20,150,100, fill='red',width=1)
canvas.create_rectangle(100,120,150,150,outline='#000000',
fill='yellow',width=1)
canvas.create_oval(200,200,300,300,outline='blue')
form.mainloop()

Ejemplo 5)
from tkinter import Tk, Label, Button, Entry
form=Tk()
form.title('Titulo')
form.geometry('400x200')
lbl1 = Label(form,text='Primer numero : ')
lbl1.place(x=10,y=10, width=100,height=30)
lbl2 = Label(form,text='Segundo numero : ')
lbl2.place(x=10,y=50, width=100,height=30)
lbl3 = Label(form,text='Resultado : ')
lbl3.place(x=10,y=120, width=100,height=30)
txt1 = Entry(form, bg='Dark turquoise')
txt1.place(x=120,y=10,width=100,height=30)
txt2 = Entry(form, bg='Dark turquoise')
txt2.place(x=120,y=50,width=100,height=30)
txt3 = Entry(form, bg='Dark turquoise')
txt3.place(x=120,y=120,width=100,height=30)
def suma():
num1 = txt1.get()
num2 = txt2.get()
res = int(num1)+int(num2)
txt3.delete(0,'end')
txt3.insert(0,res)
btn1 = Button(form,text='SUMAR', command=suma)
btn1.place(x=250,y=80,width=100,height=30)
form.mainloop()

Grafico animado:

from tkinter import Tk, Frame, Button, Label, ttk


from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animacion

fig, ax = plt.subplots(facecolor='#05FFFF')
plt.title('Grafica', color='black',size=16,family='arial')
x=np.arange(0,4*np.pi,0.01)
line, =ax.plot(x,np.cos(x), color='m', marker='o', linestyle='dotted',
linewidth=5,markersize=1, markeredgecolor='m')
def animate(i):
line.set_ydata(np.cos(x+i/40))
return line,

def iniciar():
global ani
ani = animacion.FuncAnimation(fig,animate, interval=20,blit=True, save_count=10)
canvas.draw()

def pausar():
ani.event_source.stop()

def reanudar():
ani.event_source.start()

form=Tk()
form.geometry('642x535')
form.wm_title('Grafica Matplotlib Animation')
form.minsize(width=642,height=535)
frame=Frame(form, bg='white',bd=3)
frame.pack(expand=1,fill='both')
canvas=FigureCanvasTkAgg(fig, master=frame)
canvas.get_tk_widget().pack(padx=5,pady=5,expand=1,fill='both')
Button(frame,text='Grafica Datos',width=15,bg='purple4',fg='white',command=iniciar,
).pack(pady=5,side='left',expand=1)
Button(frame, text='Pausar',width=15,bg='salmon',fg='white',
command=pausar).pack(pady=5,side='left',expand=1)
Button(frame, text='Reanudar', width=15, bg='green',fg='white',
command=reanudar).pack(pady=5, side='left',expand=1)
form.config(bg='dark turquoise')

form.mainloop()
from tkinter import Tk, Label, Button, Entry
form=Tk()
form.title('Titulo')
form.geometry('400x200')
lbl1 = Label(form,text='Primer numero : ')
lbl1.grid(row=0,column=0, padx=6,pady=6)
lbl2 = Label(form,text='Segundo numero : ')
lbl2.grid(row=1,column=0, padx=6,pady=6)
lbl3 = Label(form,text='Resultado : ')
lbl3.grid(row=2,column=0, padx=6,pady=6)
txt1 = Entry(form, bg='Dark turquoise')
txt1.grid(row=0, column=1,padx=6,pady=6)
txt2 = Entry(form, bg='Dark turquoise')
txt2.grid(row=1, column=1,padx=6,pady=6)
txt3 = Entry(form, bg='Dark turquoise')
txt3.grid(row=2,column=1,padx=6,pady=6)
def suma():
num1 = txt1.get()
num2 = txt2.get()
res = int(num1)+int(num2)
txt3.delete(0,'end')
txt3.insert(0,res)
btn1 = Button(form,text='SUMAR', command=suma)
btn1.grid(row=2, column=2,padx=6,pady=6)
form.mainloop()

Listas:

También podría gustarte