unrecognized character in %c format string %c - Python - Programmation
Marsh Posté le 05-07-2015 à 10:48:00
utilise les balises [ code ] [ /code] (sans les espaces)
Code :
|
Marsh Posté le 05-07-2015 à 20:37:24
!
Pour t'aider à résoudre ton problème, voici un extrait de l'aide sur la fonction depuis ce site :
Citation : |
Je pense que c'est l'utilisation de la fonction plot( ) qui n'est pas adéquate : à la place de 'Pression interne', tu dois indiquer une chaîne de caractères précisant le format du tracé.
Marsh Posté le 04-07-2015 à 11:52:49
Bonjour,
j'ai écrit un programme d'Euler à la suite duquel j'essaie d'afficher les courbes mais tout ce que j'obtiens est le message d'erreur suivant :
Traceback (most recent call last):
File "<string>", line 250, in run_nodebug
File "E:\PSI-Info.py", line 65, in <module>
plt.plot(x,y,'Pression interne')
File "D:\Matthieu_Data\Bibliothèques\Bureau\EduPython\App\lib\site-packages\matplotlib\pyplot.py", line 2987, in plot
ret = ax.plot(*args, **kwargs)
File "D:\Matthieu_Data\Bibliothèques\Bureau\EduPython\App\lib\site-packages\matplotlib\axes.py", line 4139, in plot
for line in self._get_lines(*args, **kwargs):
File "D:\Matthieu_Data\Bibliothèques\Bureau\EduPython\App\lib\site-packages\matplotlib\axes.py", line 319, in _grab_next_args
for seg in self._plot_args(remaining, kwargs):
File "D:\Matthieu_Data\Bibliothèques\Bureau\EduPython\App\lib\site-packages\matplotlib\axes.py", line 278, in _plot_args
linestyle, marker, color = _process_plot_format(tup[-1])
File "D:\Matthieu_Data\Bibliothèques\Bureau\EduPython\App\lib\site-packages\matplotlib\axes.py", line 131, in _process_plot_format
'Unrecognized character %c in format string' % c)
ValueError: Unrecognized character P in format string
Voilà le programme :
def liste():
T=[]
a=0
for i in range(100):
a=i+1
T.append(a)
return T
from math import cos
from math import sin
a=2
K=1
Vo=1
h=1
S=2
w=1
e=1
A=1
def F(y,t):
return a*y*((-K*(y-10**5)/(Vo-h*S*A*cos(w*t))*(1-e*(1-(y/(10**5))**a)))-((h*S*A*w*sin(w*t))/(Vo-h*S*A*cos(w*t))))
def Euler(F,yo,T):
N=len(T)
y=[0]*N
y[0]=yo
for i in range(N-1):
y[i+1]=y[i]+(T[i+1]-T[i])*F(y[i],T[i])
return y
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(0,100,100)
y=Euler(F,1,T)
plt.plot(x,y,'Pression interne')
Apparemment le problème vient de mon utilisation de matplotlib mais je ne vois pas du tout comment le résoudre.