matplotlib.pyplot.plot : TypeError: 'tuple' object is not callable

a marqué ce sujet comme résolu.

Bonsoir, J’ai eu un TP hier qui au début consistait à afficher la courbe de sin(x). J’ai donc programmé la fonction suivante :

1
2
3
4
5
6
7
8
import matplotlib.pyplot as plt
import numpy as np

xpt = np.linspace(0,5,100)
ypt = np.sin(xpt)

plt.plot(xpt,ypt)
plt.show()

Le soucis est que cela me donne une erreur que je ne comprends pas et, malgré toutes mes recherches internet, que je n’arrive point à résoudre :

1
2
3
4
Traceback (most recent call last):
  File "C:\Users\enead\Desktop\dasfsadfc.py", line 7, in <module>
    plt.plot(xpt,ypt)
TypeError: 'tuple' object is not callable

Auriez-vous déjà eu ce problème? Comment faire pour le régler? Merci d’avance!

Salut,

Ton code fonctionne très bien chez moi. La seule explication que je vois est que pour une raison ou pour une autre, tu ne charges pas le matplotlib que tu veux en mémoire mais autre chose qui porte le même nom (genre si tu as un script qui s’appelle matplotlib.py à côté de l’autre script, ou bien que le matplotlib que tu as installé est un ersatz).

Ensuite je comprends pas trop ce que tu veux dire par la ^^’

ArilesDjenaoussine

Il te demande de vérifier que tu n’aurais pas un fichier matplotlib.py dans ton répertoire courant, qui prendrait le dessus sur la vraie bibliothèque.

Mais comme tu t’en sers comme d’un package, ça m’étonnerait un peu. Peut-être s’agit-il d’un problème de version ? Quelle version de la matplotlib utilises-tu ?

Bon eh bien… je n’ai pas vraiment compris… mais dans le fichier matplotlib y avait des fichiers *.py et j’ai cherché s’il y en avait un qui se nommait "plot.py" et je l’ai effectivement trouvé et je l’ai ouvert pour voir de quoi il s’agissait. Suite à ça je l’ai fermé et la quand je re-exécute mon programme… miracle ça fonctionne !!

Je ne comprends pas vraiment en quoi le fait d’ouvrir le fichier "plot.py" a tout reglé mais de ce fait mon problème à l’air d’être résolu!! :D

Merci pour votre aide!! :P

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte