Добавил:
chrysler_a57_mltbnk
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
import matplotlib.pyplot as plt #type: ignore
import numpy as np
from math import pi
def plot2d_params(f, x_lim, y_lim, grid_n=100):
x1_p = np.linspace(x_lim[0], x_lim[1], grid_n)
x2_p = np.linspace(y_lim[0], y_lim[1], grid_n)
x1_p, x2_p = np.meshgrid(x1_p, x2_p)
s = x1_p.shape
r = f(x1_p.flatten(), x2_p.flatten())
r.shape = s
return (x1_p, x2_p, r)
def graph_func(x, y):
return x ** 2 + y ** 2
#Функция нормального распределения
def gauss_2d(x,y,m=[0.0,0.0],st=[1.0,1.0]):
##Определение параметров двумерного нормального распределения
z1: npt.NDArray[np.float32] = (-1)*(x-m[0])**2/(2*st[0]**2)
z2: npt.NDArray[np.float32] = (-1)*(y-m[1])**2/(2*st[1]**2)
return 1/(2*pi*st[0]*st[1])*np.exp(z1+z2)
x, y, z = plot2d_params(graph_func, (-4, 4), (-4, 4))
plt.contour(x, y, z, levels=7, linestyles="dashed")
plt.show()
Соседние файлы в папке лабы
