으로 I는 간격에 의해 정의 xi,yi,zi
입방 격자가 meshgrid. W.shape() == size
.NumPy와 3D 전용 도면
클래스
scipy.interpolate.LinearNDInterpolator(points, values)
:매개 변수 :
points
: 수레의 ndarray, 모양(npoints, ndims)
데이터 포인트 좌표 I 입력으로 요구하는 scipy's linear interpolation을 사용하고 싶습니다.: 플로트 또는 착체 ndarray는
values
(npoints, ...)
데이터 값을 형성.
은 어떻게 xi,yi,zi
에서 (마법의 방송을 통해) points
의 가짜 세트를 생성합니까? 지금은 보간 함수에 피드 할 중간 배열을 만드는 중입니다 - 더 좋은 방법이 있습니까?
관련 질문 : Numpy meshgrid in 3D. 이 게시물의 답은 실제로 그리드를 작성합니다. 다른 함수 (순수한 numpy 솔루션 선호)의 입력으로 만 시뮬레이션하려고합니다.
Nxdim 배열을 원하지만 실제로 전체 배열을 할당하지 않도록 numpy를 속이는가? 이것은 불가능합니다. 일반 그리드 용으로 설계된 도구를 사용해야하지만, 이것은 scipy에서 더 높은 차원에 대해서는 존재하지 않습니다. – seberg
@Sebastian, 작은 배열로 더 큰 배열을 시뮬레이션 할 수 있습니다. 예를 들어''x.shape, y.shape = (n, m)'이라면'[X, Y] = '를 취하여'f (x, y) = x + y' * np.meshgrid (x, y); S = X + Y'보다는 오히려'S = x + y [:, np.newaxis]'이다. 자세한 내용은 링크 된 질문을 참조하십시오. – Hooked
예, 그렇지만 더 많은 요소를 시뮬레이션 한 다음 실제로 xi, zi, yi 배열 안에 있습니다. 이론적으로 이것은 (stride_tricks와 함께) 가능합니다. 그러나 결과 배열은 2 차원이기 때문에이 경우에는 배열을 구성 할 수 없으며 scipy가 어쨌든 나중에 복사본을 만들지는 않을 것 같지 않습니다. – seberg