probleme pour tracer une fonction
Bonjour, j'essaye de tracer le graphe de ma fonction g définie ci dessous mais ça me met une erreur que je ne comprends pas... ma fonction marche mais c'est le traçage du graphe qui ne marche pas..
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| def fact(n):
if n<2:
return 1
else:
return n*fact(n-1)
def caga(a,x):
if x>0 and x<1 :
return (1/fact(a-1))*x**(a-1)
elif x>=1 :
return (1/fact(a-1))*np.exp(-x)
else :
return 0
caga(2,3)
x_grid = np.linspace (0,5,100)
plt.plot(x_grid,caga(a,x_grid)) |
ça me met :
Citation:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
lorsque je remplace par
Code:
1 2 3 4 5 6 7
| def caga(a,x):
if x.any()>0 and x.any()<1 :
return (1/fact(a-1))*x**(a-1)
elif x.any()>=1 :
return (1/fact(a-1))*np.exp(-x)
else :
return 0 |
ça me met l'erreur suivante :
Citation:
x and y must have same first dimension, but have shapes (100,) and (1,)
Je ne comprends vraiment pas.. Merci d'avance pour votre aide :)