Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from tkinter import *
- from decimal import *
- from statistics import *
- #création de la fenêtre home
- home = Tk()
- #personalisation de la fenêtre
- home.title("Calculateur de statisques (home)")
- home.minsize(1280, 720)
- home.maxsize(1280, 720)
- home.iconbitmap("Stat.ico")
- home.config(background='#1e232b')
- #création de la fonction du démarrage du calculateur
- def start():
- quit()
- open_stat()
- def quit():
- home.destroy()
- def open_stat():
- #création d'une nouvelle fenêtre
- stats = Tk()
- #personnalisation de la nouvelle fenêtre
- stats.title("Calculateur de statisques")
- stats.minsize(1280, 720)
- stats.maxsize(1280, 720)
- stats.iconbitmap("Stat.ico")
- stats.config(background='#1e232b')
- #création d'une frame
- frame = Frame(stats, bg ='#1e232b')
- #création d'une sous frame
- right_frame = Frame(frame, bg='#1e232b')
- #création d'une sous frame pour les réponses
- réponses_frame = Frame(frame, bg='#1e232b')
- #ajout d'une image sur la frame principale
- width = 500
- height = 350
- image = PhotoImage(file="statistiques.png")
- canvas = Canvas(frame, width=width, height=height, bg='#1e232b', bd=0, highlightthickness=0)
- canvas.create_image(width/2, height/2, image=image)
- canvas.grid(row=0, column=0, sticky=W)
- #création d'une liste pour récupérer toutes les valeurs
- valeurs = []
- #ajout de texte contenant la liste
- label_liste = Label(right_frame, text = valeurs, font=("Calibri", 15), bg='#1e232b', fg='White')
- label_liste.pack()
- #ajout de d'un champs de valeur sur la frame secondaire
- valor_one = Entry(right_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- valor_one.pack()
- #ajout d'un choix pour le nombres de quantiles texte + entry
- quanti_label = Label(right_frame, text="Combien de quantiles ?", font=("Calibri", 15), bg='#1e232b', fg='White')
- quanti_label.pack()
- quanti_entry = Entry(right_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- quanti_entry.pack()
- quanti = double(quanti_entry.get())
- #ajout d'un text pour le champ de réponses "moyennes"
- label_moyenne = Label(réponses_frame, text="Moyenne", font=("Calibri", 15), bg='#1e232b', fg='White')
- label_moyenne.pack()
- #ajout d'un champs de réponses
- reply = Entry(réponses_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- reply.pack()
- #ajout d'un texte pour le nombre de résultats
- nbr_label = Label(réponses_frame, text ="Effectif total", font=("Calibri", 15), bg='#1e232b', fg='White')
- nbr_label.pack()
- #ajout d'un champs de réponses pour le nombre de résultats
- nrb_résultats = Entry(réponses_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- nrb_résultats.pack()
- #ajout d'un texte pour la médiane
- mediane_label = Label(réponses_frame, text ="Médiane", font=("Calibri", 15), bg='#1e232b', fg='White')
- mediane_label.pack()
- #ajout d'un champs de réponse pour la médiane
- mediane = Entry(réponses_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- mediane.pack()
- #ajout d'un texte pour le mode
- mode_label = Label(réponses_frame, text ="Le mode", font=("Calibri", 15), bg='#1e232b', fg='White')
- mode_label.pack()
- #ajout d'un champs de réponse pour le mode
- mode_reply = Entry(réponses_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- mode_reply.pack()
- #ajout d'un texte pour la variance
- variance_label = Label(réponses_frame, text ="Variance", font=("Calibri", 15), bg='#1e232b', fg='White')
- variance_label.pack()
- #ajout d'un champs de réponse pour la variance
- variance_reply = Entry(réponses_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- variance_reply.pack()
- #ajout d'un texte pour l'intervalle interquartile
- interquartile_label = Label(réponses_frame, text ="Intervalle interquartile", font=("Calibri", 15), bg='#1e232b', fg='White')
- interquartile_label.pack()
- #ajout d'un champs de réponse pour l'intervalle interquartile
- interquartile = Entry(réponses_frame, font=("Calibri", 15), bg='#1e232b', fg='White')
- interquartile.pack()
- #création d'une fonction pour ajouter les résultats à la liste "valeurs"
- def add_liste():
- valeurs.append(Decimal(valor_one.get()))
- print(valeurs)
- valor_one.delete(0, END)
- label_liste.config(text= valeurs)
- #création d'une fonction pour tout calculer
- def calcul():
- result = mean(valeurs)
- print("Le résultats est {}".format(result))
- reply.delete(0, END)
- reply.insert(0, result)
- nbr = len(valeurs)
- nrb_résultats.delete(0, END)
- nrb_résultats.insert(0, nbr)
- median = median_grouped(valeurs)
- mediane.delete(0, END)
- mediane.insert(0, median)
- le_mode = mode(valeurs)
- mode_reply.delete(0, END)
- mode_reply.insert(0, le_mode)
- la_variance = variance(valeurs)
- variance_reply.delete(0 ,END)
- variance_reply.insert(0, la_variance)
- l_intervalle = quantiles(valeurs, n=quanti, method='exclusive')
- interquartile.delete(0, END)
- interquartile.insert(0, l_intervalle)
- #faux texte pour la right_frame
- faux2_label = Label(right_frame, text="AAAAAAAAAAAA", bg='#1e232b', fg='#1e232b')
- faux2_label.pack()
- #faux texte pour la réponses_frame
- faux3_label = Label(réponses_frame, text="AAAAAAAAAAAA", bg='#1e232b', fg='#1e232b')
- faux3_label.pack()
- #créer un bouton pour envoyer la réponses dans le liste
- submit_button = Button(right_frame, text="Envoyer la réponse", font=("Calibri", 10), bg='White', fg='#1e232b', command=add_liste)
- submit_button.pack()
- #créer un bouton pour calculer tout
- moyenne_button = Button(réponses_frame, text="Calculer", font=("Calibri", 10), bg='White', fg='#1e232b', command=calcul)
- moyenne_button.pack()
- #création d'une frame vide + faux texte
- vide_frame = Frame(frame, bg='#1e232b')
- faux_label = Label(vide_frame, text="AAAAAAAAAAAA", bg='#1e232b', fg='#1e232b')
- faux_label.pack()
- vide_frame.grid(row=0, column=2, sticky=W)
- #affichage de la frame + sous frame + sous frame pour réponses
- réponses_frame.grid(row=0, column=3, sticky=W)
- right_frame.grid(row=0, column=1, sticky=W)
- frame.pack(expand=YES)
- #affichage de la nouvelle fenêtre
- stats.mainloop()
- #création d'une frame pour la fenêtre home
- frame = Frame(home, bg='#1e232b')
- #création de sous frames
- sous_frame = Frame(frame, bg='#1e232b')
- fictif_frame = Frame(frame, bg='#1e232b')
- #ajout de textes dans le frame principale
- label_title = Label(frame, text="Bienvenue sur ce programme réalisé pour calculer les statistiques", font=("Calibri", 30), bg='#1e232b', fg='White')
- label_title.pack()
- label_subtitle = Label(frame, text="Réalisé et codé par Emilien", font=("Calibri", 15), bg='#1e232b', fg='White')
- label_subtitle.pack()
- #création de texte fictif
- label_fictif = Label(fictif_frame, text ="FICITF", font=("Calibri", 15), bg='#1e232b', fg='#1e232b')
- label_fictif.pack()
- #création d'un bouton pour la sous frame
- start = Button(sous_frame, text="Ouvrir le calculateur", font=("Calibri", 10), bg='White', fg='#1e232b', command = start)
- start.pack()
- #affiche de la frame
- frame.pack(expand = YES)
- fictif_frame.pack()
- sous_frame.pack()
- #affichage des fenêtres
- home.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement