Graafikute ja diagrammide loomine, TKinter

Matplotlib – Graafikute loomine Pythonis:

matplotlib on üks enimkasutatavaid visualiseerimisteeke Pythonis. Selle alamosa pyplot võimaldab kiiresti graafikuid luua, sarnaselt MATLABi süntaksile.

import matplotlib.pyplot as plt
 
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]
 
plt.plot(x, y)
plt.title("Lihtne graafik")
plt.xlabel("x telg")
plt.ylabel("y telg")
plt.show()

õhilised graafikukäsud:

Matplotlib võimaldab joonistada mitmesuguseid diagramme:

KäskGraafiku tüüp
plot()Joonjoon
scatter()Hajuvusdiagramm
bar()Tulpdiagramm
hist()Histogramm
pie()Sektordiagramm
TähisStiil
'-'Täisjoon
'--'Katkendjoon
'-.'Punkt-kriips
':'Punktiir
''Ainult markerid
TähisMarker
'.'Punkt
'o'Ring
'^'Kolmnurk üles
's'Ruut
'*'Täht
'D'Rombi

Tekst / fondid ja värvid:

Saame graafikutele lisada tekste:
 
plt.title("Graafiku pealkiri", fontsize=14, fontweight='bold')
plt.xlabel("x telg", fontsize=12)
plt.ylabel("y telg", fontsize=12)
plt.text(2, 10, "Tipp-punkt", fontsize=10, color='red')

Graafiline liides(Tkinter, CustomTkinter jne)

Tkinter on Pythonisse sisseehitatud moodul, millega saab luua graafilisi aknaid, nuppe, sisestusvälju ja palju muud. See põhineb Tcl/Tk teekidel ja on vaikimisi olemas kõigis Python’i standardpaigaldustes.

Põhiprintsiibid:

Tkinter’i kasutamine põhineb järgmisel loogikal:

  1. Loo põhiaken (Tk)
  2. Lisa sinna vidinad (nupud, sildid, sisestusväljad jne)
  3. Käivita sündmuste tsükkel (mainloop)

Lihtne näide: Põhistruktuur:

import tkinter as tk
 
# Loo põhiaken
aken = tk.Tk()
aken.title("Minu esimene GUI")
aken.geometry("300x200")
 
# Lisa tekstisilt
silt = tk.Label(aken, text="Tere, maailm!")
silt.pack()
 
# Käivita rakendus
aken.mainloop()

Label – Tekstiväli

12silt = tk.Label(aken, text="See on tekst", fg="blue", font=("Arial", 14))silt.pack()

Button – Nupp

12345def vajutati():    print("Nuppu vajutati!")nupp = tk.Button(aken, text="Vajuta mind", command=vajutati)nupp.pack()

Entry – Sisestusväli

12sisestus = tk.Entry(aken)sisestus.pack()

Text – Mitmerealine tekstikast

12tekstikast = tk.Text(aken, height=5, width=30)tekstikast.pack()

Checkbutton – Märkeruut

123valik = tk.IntVar()märk = tk.Checkbutton(aken, text="Valik", variable=valik)märk.pack()

Paigutusmeetodid:

  • pack() – lihtne, järjestikune paigutus
  • grid() – tabelipõhine paigutus (rida, veerg)
  • place() – täpne x/y koordinaatidega

Paigutusmeetodid:

pack() – lihtne järjestus

tk.Label(aken, text="Üks").pack()tk.Button(aken, text="Kaks").pack()

grid() – täpne paigutus ridade ja veergudega

tk.Label(aken, text="Eesnimi:").grid(row=0, column=0)tk.Entry(aken).grid(row=0, column=1)

place() – paigutus x/y koordinaatide järgi

	
tk.Label(aken, text="Käsitsi paigutus").place(x=50, y=30)

Ära kasuta pack() ja grid()/place() samas konteineris!

Leave a Reply

Your email address will not be published.