Мне нужно вычислить и построить график функции, и это первые две производные. Затем мне нужно отобразить минимальные и максимальные точки исходной функции на графике. Я рассчитал это, но я потерял, как наметить данные.
Значения x для минимальной / максимальной точек
criticalPoints[]
со значениями y, равными
criticalPointsY[]
Вот сегмент кода, где появляется ошибка.
equation=CreateFunction();
firstDeriv=equation.diff(x);
secondDeriv=firstDeriv.diff(x);
print(equation);
criticalPoints=solveset(firstDeriv,x);
criticalPointsY=[];
for a in criticalPoints:
criticalPointsY.append(equation.subs(x,a));
p=plot(equation,firstDeriv,secondDeriv,(x,-10,10));
# Need to add the critical points to the graph. We have them, and the
# y values, but need to put them on the graphs.
print(criticalPoints)
print(criticalPointsY);
for a in range(0, len(criticalPoints)):
xval=criticalPoints[a];
yval=criticalPointsY[a];
plt.plot(xval, yval, 'ro')
p.show();
plt.show();
Когда я запускаю программу, я получаю эту ошибку.
`
Traceback (most recent call last):
File "--------", line 58, in <module>
xval=criticalPoints[a];
TypeError: 'FiniteSet' object does not support indexing
Я попытался построить точки на p и получить другую ошибку
p.plot(criticalPoints,criticalPointsY);
AttributeError: 'Plot' object has no attribute 'plot'
Есть ли способ построить точки на этом графике? (Р)