Значения индекса Numpy для каждого элемента в трехмерном массиве - PullRequest
1 голос
/ 01 июля 2011

У меня есть 3D-массив, созданный с помощью команды numpy mgrid, так что каждый элемент имеет определенное значение, а индексы сохраняют пространственную информацию.Например, если один суммируется по оси z (3-е измерение), то результирующий 2D-массив может быть использован в matplotlib с функцией imshow () для получения изображения с различными значениями в пикселях.

Мой вопросis: Как я могу получить значения индекса для каждого элемента в этой сетке (a, b, c)?

Мне нужно использовать значения индекса, чтобы вычислить относительный угол каждой точки к началу координат сетки,(например, theta = sin-1 (sqrt (x ^ 2 + y ^ 2) / sqrt (x ^ 2 + y ^ 2 + z ^ 2))

Возможно, это можно перевести на другую 3D-сеткугде каждый элемент является массивом [a, b, c]?

1 Ответ

1 голос
/ 02 июля 2011

Я не совсем понимаю ваш смысл, но если вы ищете 3d-массивы, содержащие индексы x, y и z, то следующее может удовлетворить ваши потребности; предположим, что ваши данные хранятся в трехмерном массиве с именем "abc":

import numpy as nm
x,y,z = nm.mgrid[[slice(dm) for dm in abc.shape]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...