Je me rends compte qu'il y a un griddata pour NumPy via Matplotlib, mais y at-il un griddata3 (même griddata, mais pour les dimensions plus élevées)? En d'autres termes, j'ai (x, y, z, d (x, y, z)) où (x, y, z) forment une grille irrégulière et d (x, y, z) est un scalaire fonction de trois variables. J'ai besoin de générer d (xi, yi, zi) pour un nouvel ensemble de points (xi, yi, zi) en utilisant une sorte d'interpolation capable de gérer la non-uniformité des données originales (x, y, z). En fin de compte, les données (xi, yi, zi, d (xi, yi, zi)) devront être rendues en surface, mais c'est un problème pour plus tard. Je n'ai pas non plus de forme analytique pour la fonction d (.); J'ai juste des données pour ça.Griddata3 de MATLAB pour NumPy?
Répondre
Vous ne savez pas exactement comment vous comptez rendre une surface d'une fonction scalaire de 3 variables, sauf peut-être en utilisant des plans de coupe ou quelque chose de similaire. Mayavi (vraiment VTK qui alimente Mayavi) a un support pour la triangulation Delaunay efficace via enthought.mayavi.mlab.pipeline.delaunay3d
, qui est le noyau de l'algorithme utilisé par griddata3
. Voir the 2D example code qu'ils ont posté, il suffit d'ajouter une dimension (et utiliser delaunay3d
à la place). Je ne connais pas de moyen d'obtenir explicitement les valeurs interpolées utilisées pour rendre la surface, mais il pourrait y avoir un moyen de l'échantillonner via Mayavi, vous pourriez fouiller dans la documentation ou demander sur l'une des listes de diffusion Enthought. En variante, l'une des fonctions C de la bibliothèque NCAR natgrid peut être utile, c'est-à-dire dsgrid3d. Un wrapper partiel est implémenté en tant que matplotlib toolkit.
merci! Je vais regarder dans ceux-ci. – reckoner
- 1. Numpy/Python performant terriblement vs Matlab
- 2. interface numpy à matlab avec mlabwrap
- 3. Est-il possible de reproduire randn() de MATLAB avec NumPy?
- 4. Quel est l'équivalent de repmat de MATLAB dans NumPy
- 5. Equivalent numpy du tableau de cellules de MATLAB
- 6. Matlab à la conversion Python code (NumPy, SciPy, Matplotlib?)
- 7. magie numpy pour la fonction de nettoyage
- 8. opérations de matrice NumPy
- 9. tableau de diffusion Numpy
- 10. multiplication de matrice numpy
- 11. Routine Numpy pour l'informatique Matrix Minors?
- 12. comparaison pour les chaînes dans Numpy
- 13. indices Sélection pour un tableau 2d numpy
- 14. Ajout ou redimensionnement pour un tableau numpy
- 15. Comment créer une matrice 3 dimensions en numpy, comme matlab a (:,:, :)
- 16. Python/Numpy: tableau de division
- 17. Aide au tri de Numpy
- 18. ImportError lors de l'installation de NumPy pour Python 2.7
- 19. problème d'affectation de tableau numpy
- 20. Statistiques avec numpy
- 21. Splicing NumPy Arrays
- 22. Accélérer la boucle NumPy
- 23. matrices croissance dans NumPy
- 24. Python/Numpy MemoryError
- 25. équivalent de 'dans' pour comparer deux tableaux NumPy
- 26. Tableau d'objets avec numpy
- 27. Cadre de test unitaire pour MATLAB
- 28. CUDA et MATLAB pour l'optimisation de boucle
- 29. Bibliothèque de codes MATLAB pour C++
- 30. Python Numpy ndarray
yay! bon travail! – reckoner