2009-12-29 2 views
0

나는 NumPy에 대한 을 통해 griddata가 있다는 것을 알고 있지만, 거기에 griddata3 (griddata가 있지만 더 높은 차원을 위해)가 있습니까?NumPy 용 MATLAB의 griddata3?

즉, (x, y, z)가 불규칙한 격자를 형성하고 d (x, y, z)가 스칼라 인 경우 (x, y, z, d) 세 변수의 함수. 원래 (x, y, z) 데이터의 비 균일 성을 처리 할 수있는 보간법을 사용하여 (xi, yi, zi) 점의 새 집합에 대해 d (xi, yi, zi)를 생성해야합니다.

궁극적으로 (xi, yi, zi, d (xi, yi, zi)) 데이터는 어떻게 든 표면으로 렌더링해야하지만 나중에 문제가됩니다. 또한 d (.) 함수에 대한 분석 형식이 없습니다. 방금 데이터가 있습니다.

답변

1

SciPy 0.9 (현재 첫 번째 베타 버전이 있음)에는 N 차원 데이터를 처리 할 수있는 새로운 griddata 함수가 있습니다.

+0

예! 훌륭한 일! – reckoner

0

저는 griddata3에 익숙하지 않지만, meshgrid과 관련하여 post을 살펴볼 수 있습니다.

1

커브 플레인 또는 유사한 것을 사용하는 것을 제외하고는 3 가지 변수의 스칼라 함수 표면을 어떻게 렌더링할지 확실하지 않습니다. Mayavi (실제로은 Mayavi의 힘을 얻습니다)은 griddata3에서 사용되는 알고리즘의 핵심 인 enthought.mayavi.mlab.pipeline.delaunay3d을 통해 효율적인 Delaunay 삼각 측량을 지원합니다. 그들이 게시 한 코드 the 2D example을 참조하십시오. 하나의 측정 기준을 추가하고 대신 delaunay3d을 사용하십시오. 명시 적으로 표면을 렌더링하는 데 사용 된 보간 값을 얻는 방법을 모르지만 Mayavi를 통해 샘플을 샘플링하는 방법이있을 수 있습니다. 설명서를 읽거나 Enthought 메일 링리스트 중 하나에서 질문 할 수 있습니다.

또는 NCAR natgrid 라이브러리의 C 함수 중 하나가 유용 할 수 있습니다. dsgrid3d. matplotlib toolkit으로 구현 된 부분 래퍼가 있습니다.

+0

감사합니다. 나는 이것들을 들여다 볼 것이다. – reckoner