#python #class #scipy #interpolation
#python #класс #scipy #интерполяция
Вопрос:
Теоретически линейная интерполяция может быть выполнена с помощью любой триангуляции (не только триангуляции Делоне).
Я пытаюсь использовать scipy.interpolate.LinearNDInterpolator
с предварительно вычисленной 3D-триангуляцией, которая не относится к классу scipy.spatial.Delaunay
. Однако это не сработает, потому что код SciPy проверяет класс триангуляции ( if isinstance(points, qhull.Delaunay)
…). Я попытался создать «поддельную» триангуляцию Делоне с правильным классом, изменив атрибуты ‘points’ и ‘simplices’ объекта Delaunay, но я получил ошибку AttributeError: can't set attribute
.
Есть ли способ обойти это или другая библиотека для линейной интерполяции?
Ответ №1:
Похоже, matplotlib.tri.LinearTriInterpolator
это может быть хорошей альтернативой. Я обновлю этот пост, когда протестирую это.
Редактировать: Это не решение моей проблемы, потому что оно реализовано только в 2D.