
Notation PIX
Projet de notation PIX
Notation PIX
1) L'objectif de ce projet est de tout d'abord créer un graphique a partir d'un tableur comportant toutes les notes PIX de la classe.
2) Puis avec ces notes, créer un autre graphique avec cette fois ci la moyenne sur 20 pour chaque note.
1)
import matplotlib.pyplot as plt
fichier = open("Nsi1.csv", encoding="utf8")
ligne = fichier.readline() # lecture de la première ligne
noms_colonnes = ligne.strip().split(";") # récupération de tous les éléments de la première lignes
print("noms colwsw-14">
Liste_x=[]
Liste_y=[]
for ligne in fichier:
elements = ligne.strip().split(";")
Liste_x.append(elements[4])
Liste_y.append(int(elements[9]))
print(Liste_x, Liste_y)
fichier.close()
def tracer_figure(liste1,liste2):
plt.figure(figsize = (16, 10))
plt.plot(liste1,liste2, label='score')
plt.xlabel('Nom')
plt.xticks(rotation = 60)
plt.ylabel('points')
plt.title("Score")
plt.legend()
plt.show()
if __name__=="__main__":
tracer_figure(Liste_x,Liste_y)
Tout d'abord il faut importer une bibliothèque avec "import matplotlib.pyplot as plt" car python ne peut pas réaliser se programme seul.
Ensuite la ligne "fichier = open("Nsi1.csv", encoding="utf8")" jusqu'a "fichier.close()" servent a sélectionner le bon fichier les bonnes colonnes et des les affecter à certainnes variable, ici ce sont les abscices (Liste_x) et les ordonnés (Liste_y).
Et pour finir la ligne "def tracer_figure(liste1,liste2):" jusqu'a "tracer_figure(Liste_x,Liste_y)" servent à définir ce qu'est le graphique, sa taille: "16,10",ses abscices et ordonnés, la légende: "plt.legend()" et son nom .Sans oublier "plt.show()" qui sert a faire apparaitre le graphique.
2)
Ajout à la suite du code précédent:
def Moyenne(liste):
sum = 0
Z = 0
for i in liste:
sum = i + sum
Z = Z + 1
Moy = sum/Z
return(Moy)
def min(liste):
minimum = liste[0]
for i in liste :
if i <= minimum:
minimum = i
return(minimum)
def max(liste):
maximum = liste[0]
for i in liste :
if i >= maximum:
maximum = i
return(maximum)
moyenne=Moyenne(Liste_y)
maximum=max(liste_y)
Notemoyenne=int(input("Choisisser la note moyenne"))
b = (20-Notemoyenne*maximum/moyenne)/(1-maximum/moyenne)
a=(Notemoyenne-b)/moyenne
#Notes=[round(a*score+b,1) for score in Liste_y]
Notes=[]
for score in Liste_y:
Notes.append(round(a*score+b,1))
tracer-figure(Liste_x,Notes,"Notes")
Les ligne "def moyenne(liste):" , "def min(liste): ", "def max(liste):" ainsi que les lignes de code les suivants jusqu'à chaque "return" servent a définir ce qu'est la moyenne, le maximum et le minimum (comment les calculer), puis les lignes "moyenne=Moyenne(Liste_y)" à "tracer-figure(Liste_x,Notes,"Notes")" servent a calculer les moyenne sur 20 de chaque note et de les placer sur le graphique.