要繪制二維高斯函數(shù),可以使用Python中的NumPy和Matplotlib庫。下面是一個(gè)例子:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 定義二維高斯函數(shù)
def Gaussian(x, y, x0, y0, sigma):
return np.exp(-((x - x0)**2 + (y - y0)**2) / (2.0 * sigma**2))
# 設(shè)置參數(shù)
sigma = 2
x, y = np.meshgrid(np.linspace(-5, 5), np.linspace(-5, 5))
# 計(jì)算高斯函數(shù)
z = Gaussian(x, y, 0, 0, sigma)
# 繪制3D圖形
fig = plt.figure()
ax = Axes3D(fig)
ax.plot_surface(x, y, z, rstride=1, cstride=1, cmap=plt.get_cmap('rainbow'))
plt.show()
# 繪制等高線圖形
plt.contourf(x, y, z, 10, cmap=plt.get_cmap('rainbow'))
plt.show()
這個(gè)例子首先定義了一個(gè)二維高斯函數(shù),然后利用NumPy創(chuàng)建了一個(gè)網(wǎng)格,計(jì)算了高斯函數(shù)的值,并用Matplotlib繪制了3D圖形和等高線圖形??梢钥吹剑瑘D形的形狀與高斯分布的形狀非常相似。在實(shí)際應(yīng)用中,可以根據(jù)需要調(diào)整高斯函數(shù)的參數(shù)和繪圖選項(xiàng),來得到不同形狀和大小的二維高斯函數(shù)圖像。