2012-02-22 3 views
5

Ive создал трехмерную матрицу в MATLAB. Значениями матрицы являются скорость в этой точке прямоугольного сечения. Я бы хотел, чтобы сюжет с цветами показывал значения в каждой позиции, возможно ли это?Matlab 3D Matrix Plot

Поразив это другим способом, у меня есть матрица размером 100x100x200. Идентификатор, как граф, который имеет 100x100x200 точек, и цвет каждой из этих точек связан с его значением.

+0

Вы должны обязательно принять ответ, если он решил вашу проблему. –

ответ

11

Этот вопрос очень похож на this question. Вы можете проверить это.

UPDATE:

Предположим, у вас есть 3D-матрицу :

A = rand(100,100,200); 

Вы хотите построить каждую запись в A сопоставлен с цветом в его 3D-координаты. Сначала приготовьте координаты:

[x,y,z] = meshgrid(1:100,1:100,1:200); 

Теперь вы готовы к использованию scatter3:

scatter3(x(:),y(:),z(:),5,A(:)) 

Здесь : индексирования векторизации координаты по столбцам.

Надеюсь, это поможет.

+0

Это выглядит полезным для функции scatter3, однако как мне поместить в него мои значения, если моя матрица в настоящее время относится к размерам, указанным выше? – dojogeorge

+0

@ user1045280: Я обновил свой ответ, чтобы отразить ваш комментарий. – upperBound