Функция Scipy interp2d выдает z = f (x, y), я хотел бы найти для x

1

Я использую 2d интерполяционную функцию в scipy, чтобы сгладить 2d-изображение. Насколько я понимаю, интерполяция вернет z = f (x, y). Я хочу найти x с известными значениями y и z. Я попробовал что-то вроде этого;

f = interp2d (x, y, z)

index = (np.abs(f (:, y) - z)). argmin()

Однако объект interp2d не работает таким образом. Есть идеи, как это сделать?

Теги:
numpy
scipy

1 ответ

0

Я смог понять это. значения yvalue, zvalue, xmin и xmax являются известными значениями. Создавая linspace из возможных значений, которые может принимать x, список может быть создан со всеми соответствующими значениями функций. Затем, используя argmin(), мы можем найти самое близкое значение в списке к известному значению z.

f = interp2d (x, y, z)

xnew = numpy.linspace(xmin, xmax)

fnew = f (xnew, yvalue)

xindex = (numpy.abs(fnew - zvalue)). argmin()

xvalue = xnew (xindex)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню