numpy求导数# 直线运动问题
# 对于f(X) = x**2
def f(x):
return x**2
plt.figure(figsize = (12,6))
n = np.linspace(-10,10,num = 50)
plt.plot(n,f(n))
plt.xlim(-11,11)
plt.ylim(-10,110)
# 选中曲线上两个点,m(2,4),n(5,25)
plt.plot([2,5],[4,25],color = 'r')
print('直线斜率为%.2f' % ((25-4)/(5-2)))
print('-------')
# 求m的导数
x_m = 2
y_m = f(x_m)
plt.plot(n,f(n))
plt.xlim(1,7)
plt.ylim(1,49)
for i in range(4,0,-1):
plt.plot([x_m,x_m + i],[y_m,f(x_m + i)],color = 'r')
print('直线斜率为%.2f' % ((f(x_m + i)-y_m)/(x_m + i-x_m)))
# f(x) = x**2
# 原始点 m,f(m)
# 增量为i,直线终点→ m+i,f(m+i)
# 斜率→ (f(m+i)-f(m))/i
def ds(xm,n):
'''
该函数为求f(x) = x**2的导数
xm:m点的x值
n:m点x往右偏移的距离
函数最后导出→ m点与m偏移n距离后点的连线的斜率
'''
y1 = f(xm)
y2 = f(xm+n)
return (y2-y1)/n
for i in np.linspace(1,0,num = 1000,endpoint = False):
print('偏移%.2f个单位距离时,斜率为:%.5f' % (i,ds(2,i)))
# 斜率为4
linspace numpy# 切线函数为:y = 4*x - 4
# 图⽰
n = np.linspace(-10,10,num = 50)
plt.plot(n,f(n))
plt.xlim(-11,11)
plt.ylim(-10,110)
plt.scatter(2,4)
plt.plot(n,4*n - 4)
# m点切线
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论