Построить многомерный массив в Matlab - PullRequest
1 голос
/ 21 марта 2012

У меня есть матрица, скажем:

size P = zeros(2,2,100);

Давайте попробуем построить первый элемент каждой из этих матриц следующим образом:

plot(1:1:100, P(1,1,:))

Это не работает. Как правильно это сделать?

Ответы [ 2 ]

5 голосов
/ 21 марта 2012

Попробуйте заговор (сжать (P (1,1,:)).

Функция squeeze () удаляет одноэлементные размеры (размеры которых равны 1).

0 голосов
/ 21 марта 2012

Решение: создать массивы вручную.Не очень элегантно, но работает.

% tl = top left, br = bottom right, etc.
for i=1:1:100
    tlplot(i) = P(1, 1, i);
    trplot(i) = P(1, 2, i);
    blplot(i) = P(2, 1, i);
    brplot(i) = P(2, 2, i);
end

Тогда, например:

plot(1:1:100, tlplot)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...