隱函數圖形是指存在于平面直角坐標系中的方程$F(x, y) = 0$表示的圖形,它與顯函數的圖形不同,沒有解析式來描述它的形狀。然而,在Python中,我們可以使用Matplotlib庫中的Contour函數來畫出這些隱函數圖形。
import numpy as np import matplotlib.pyplot as plt def F(x, y): return x**2 + y**2 - 1 x = np.linspace(-1, 1, 101) y = np.linspace(-1, 1, 101) X, Y = np.meshgrid(x, y) plt.contour(X, Y, F(X, Y), [0]) plt.show()
在上面的代碼中,我們定義了一個F函數來表示隱函數$F(x, y) = x^2 + y^2 - 1 = 0$,然后使用Numpy庫的linspace函數生成-1到1之間的101個均勻分布的點,再利用meshgrid函數生成一個網格,將x與y坐標合并成一個實際的坐標系。
接著,我們調用contour函數繪制隱函數圖形。函數中的X、Y、F(X, Y)分別代表x、y的坐標和F函數的值,[0]表示只繪制$f(x,y)=0$這一等值線。
最后使用show函數將圖形顯示出來,結果如下:
plt.contour(X, Y, F(X, Y), [0]) plt.show()
上圖中所畫的就是$x^2 + y^2 - 1 = 0$這一隱函數的圖形。同樣的方法,我們可以繪制其它的隱函數圖形。只需要定義好函數F,然后調用contour函數即可。