#使用代码块实现我们的功能主要是将我们自己的思想根据函数的方法将其转化输入到代码块,即可完成
主要分三步,
1。先有函数
2.函数的斜率
3。切线公式
调用函数,使用matplotlib画图展现

import numpy as np
from matplotlib import pyplot as plt

def fun1(x):
    return x**3-1/x
def numerical_lim(f,x):
    h=1e-4
    return (f(x+h)-f(x))/h
def tangent_line(f,x):
    #d就是调用numerical_diff求得在x点点导数
    d=numerical_lim(f,x)
    # 这里直接y=kx+b求截,简单粗暴,y就是截距
    y=f(x)-d*x
    #使用lambda匿名函数,t是形参,':'后是要执行的函数表达式
    return lambda t:d*t+y
x=np.arange(0.0,20.0,0.1)
y=fun1(x)
plt.xlabel('x')
plt.ylabel('f(x)')
#把函数作为形参时i,传入实参函数时,只要函数名即可,不用()
tf=tangent_line(fun1,1)
#因为tf返回的是lambda函数,所以要多调一次函数
y2=tf(x)
plt.plot(x,y)
plt.plot(x,y2)
plt.show()



Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐