从matlab中的矩阵绘图

时间:2016-06-25 07:00:58

标签: matlab matrix plot

我想从矩阵y的每个数组创建一个多图:

q = [...] % (a 1x6 matrix)
p = [...] % (a 6x6 matrix)
x = [0:1:40];
y = q * p ^ x;

但是我收到了这个错误:

Error using  ^ 
Inputs must be a scalar and a square matrix.
To compute elementwise POWER, use POWER (.^) instead.

3 个答案:

答案 0 :(得分:1)

为了避免功率计算中的爆炸,不要明确计算功率,而是使用中间结果

y = zeros(41,6);
y(1,:) = q;
for ind = 1:40
    y(ind+1,:) = y(ind,:)*p;
end

答案 1 :(得分:0)

q = [...] ( a 1x6 matrix)
p = [...] ( a 6x6 matrix)
x = [0:1:40];
y = [] ;
for i = 1 : length (x)
    y(i,:,:) = q * p .^ x(i);
end

q * p将生成 6 x 6 大小的矩阵。 y将是 41 x 6 x 6

的三维矩阵。

答案 2 :(得分:0)

尝试将此行修复为

for k=1:40
y = q * p ^ k;
end

你也可以这样做

for k=1:40
y = q * p ^ x(k);
end

它也会将p的幂作为x,然后是多个q * p ^ x;