1. 程式人生 > >使用matplotlib繪制導數圖像

使用matplotlib繪制導數圖像

http 學習 分享圖片 odi size 極值 blog mat lower

機器學習中導數用的非常多,本文使用matlotlib繪制函數的導數圖像,代碼如下:

# -*- coding: utf-8 -*-
import matplotlib
import numpy as np
import matplotlib.pyplot as plt

# 確定坐標軸
plt.xlim((-3, 3))
plt.ylim((-70, 150))

# 確定函數的x,y值
x1 = np.linspace(-3,3.5,100)
def y1(x1):
    y1 = 3*x1**3 + 2*x1**2 + x1 + 4
    return y1

# 一階導數的x,y值
x2 = x1
def y2(x2): y2 = 9*x2**2 + 4*x2 + x2 return y2 # 確定二階導數的x,y值 x3 = x1 def y3(x3): y3 = 18*x3 + 4 return y3 # plot為繪制圖像的函數,label為標記 plt.plot(x1, y1(x1), r-,linewidth=1,label=f(x)) plt.plot(x2, y2(x2), g--,linewidth=1,label="f ‘(x)") plt.plot(x3, y3(x3), b-,linewidth=0.8,label="
f ‘ ‘(x)") # 在圖上添加文字註釋 plt.text(-2.8,y1(3),f(x)=3x**3 + 2x**2 + x + 4,size=13) # 將標記繪制圖例 plt.legend([f(x),"f ‘(x)","f ‘ ‘(x)"], loc = lower right) plt.show() plt.close()

運行結果如下,可以通過圖像看到導數的性質:如一階導數為0,此點為極值等。

技術分享圖片

使用matplotlib繪制導數圖像