bonjour
j'ai bien compris que si je veux dans une fonction créer une variable a destinée à être utilisée en dehors de la fonction, je dois écrire :
j'ai l'impression d'avoir fait cela comme il faut mais ça bloque :
• fichier mon_matplotlib_test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
 
def tracer(police,xmin,xmax,ymin,ymax,L):
    l=4
    Linch,linch=(L/2.54,l/2.54)
    global fig,lafigure#----------pas trouvé mieux
    fig, lafigure = plt.subplots(figsize=(Linch,linch))
    lafigure.set_visible
• fichier bacasabletest
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
#import numpy as np
#import matplotlib.pyplot as plt
from _mon_matplotlib_test import *
(xmin,xmax,ymin,ymax)=(-4.5,2.5,-2.5,10.5)
tracer(12,xmin,xmax,ymin,ymax,5)
X1 = np.linspace(xmin,xmax, 256,endpoint=True)
Y1 = X1*4
lafigure.plot(X1, Y1, color="black", linewidth=0.5, linestyle="-")
plt.show()
• réponse de l'interpréteur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
fichier bacasabletest :
NameError: name 'lafigure' is not defined
j'ai l'impression que ma gestion des global est bonne, sans en être sûr à 100%
je me dis que peut être le souci bien de la particularité de cet objet ?