Code de base : représentations graphiques

Vous trouverez ci-dessous, une liste d'instructions qui permettent de :

  • Créer une fenêtre graphique contenant un repère ;
  • Régler différents paramètres dans ce repère ;
  • Créer des légendes et y insérer des formules de maths ;
  • Créer un nuage de points ;
  • Créer une courbe passant par ces points.
  • Créer une courbe représentative de fonction.

représentation graphique

La figure ci-dessus est obtenue à l'aide du code suivant.

	
# -*- coding: utf-8 -*-
	
#-------------------------------------------------------------------------------
#Importation des bibliothèques nécessaires au fonctionnement du programme
#-------------------------------------------------------------------------------

#Importation du module pylab qui permet de dessiner dans un repère
#http://www.courspython.com/introduction-courbes.html
from pylab import*


#-------------------------------------------------------------------------------
#Création des fonctions Python nécessaires au fonctionnement du programme
#-------------------------------------------------------------------------------

#Fonction dont on veut représenter la courbe

def carre(x):
    return 0.5*(x-3)**2+1


#--------------------------------------------------------------------------
#Programme principal
#--------------------------------------------------------------------------

fig = figure()                     #Création d'une figure
#création d'une sous-fenêtre (nbfenêtres en première ligne,nbfenêtres en deuxième ligne,n° fenêtre)
ax = fig.add_subplot(1, 1, 1)
title('Titre du graphique')        #Titre du graphique
xlabel("légende des abscisses ")   #Légende sur l'axe des abscisses
ylabel("légende des ordonnées ")   #Légende sur l'axe des ordonnées
xlim(0, 5)                         #xmin=0 et xmax=5
ylim(0, 4)                         #ymin=0 et ymax=4

#En abscisse
major_ticks = arange(0, 5, 1)     #xmin=0 ; xmax=5 ; pas de la graduation principale (1)
ax.set_xticks(major_ticks)        #Affichage de la graduation principale en abscisse
ax.grid(which='major', alpha=1)   #Transparence des lignes verticales principales

minor_ticks = arange(0, 5, 0.2)         #xmin=0 ; xmax=5 ; pas de la graduation secondaire (0,2)
ax.set_xticks(minor_ticks, minor=True)  #Affichage de la graduation secondaire en abscisse
ax.grid(which='minor', alpha=0.5)       #Transparence des lignes verticales secondaires

#En ordonnée
major_ticks = arange(0, 4, 1)     #xmin=0 ; xmax=4 ; pas de la graduation principale (1)
ax.set_yticks(major_ticks)        #Affichage de la graduation principale en ordonnée
ax.grid(which='major', alpha=1)   #Transparence des lignes horizontales principales

minor_ticks = arange(0, 4, 0.5)         #xmin=0 ; xmax=4 ; pas de la graduation secondaire (0,5)
ax.set_yticks(minor_ticks, minor=True)  #Affichage de la graduation secondaire
ax.grid(which='minor', alpha=0.5)       #Transparence des lignes horizontales secondaires

#Construction d'un nuage de points rouge
x=[1,2,3,4]            # liste des abscisses des points
y=[0.5,2.5,1.5,3]    # liste des ordonnées des points
plot(x,y,'ro')         # représentation des points 'ro' : en rouge et gros points

#Construction en bleu de la courbe qui relie ces points
x=[1,2,3,4]            # liste des abscisses des points
y=[0.5,2.5,1.5,3]    # liste des ordonnées des points
legende1='courbe qui passe par le nuage de points'
# représentation de la courbe en bleu avec une légende d'épaisseur 2
plot(x,y,'b',label=legende1,linewidth=2)


#Tracer de la courbe représentative de la fonction carrée
x=linspace(0,5,36)     #crée une liste de 36 nombres entre 0 et 5
y=carre(x)            #création de la liste des images par carre de la, liste x
#Création de la légende de cette courbe avec insertion d'écritures mathématiques
legende2="courbe d'équation : "+r'$y=\frac{1}{2} \times (x-3)^2+1$'
# représentation de la courbe en vert avec une légende d'épaisseur 2
plot(x,y,'g',label=legende2,linewidth=2)

legend(fontsize="12")                    #Affichage des légendes
show()                                   #montre la figure