如何将值存储到单个变量中

时间:2012-01-12 17:15:08

标签: matlab

我创建了一个X-by-Y矩阵。将矩阵的每个元素与X(长度)和Y(宽度)相乘,生成矩形矩阵(这样做是为了绘制整个矩阵长度和宽度的点)。 但是我无法将for循环生成的所有值存储到y和x中。

1)请告诉我如何将值存储到以下程序中的单个变量

2)我无法绘制在以下程序中执行操作后生成的两个不相等的维度。

X=input('enter the dimension of the matrix:');
Y=input('enter the dimension of the matrix:');    

a=rand(X,Y)

for i=1:X
  x=a(i,:)
  px=x.*X
end

for j=1:Y
  y=a(:,j)
  py=y.*Y
end

2 个答案:

答案 0 :(得分:1)

有许多MATLAB函数可用于获取具有随机值的矩阵 randi(maxi, X, Y)在这里看起来更有用 乘坐for循环:

X=input('enter the dimension of the matrix:');
Y=input('enter the dimension of the matrix:');    
maxi = 100;
a=randi(maxi,X,Y);

如果你想要想象它:

imagesc(a);

答案 1 :(得分:1)

“for”循环的每次迭代都会用新值覆盖x,px,y和py,因此它会删除所有旧值。说实话,我甚至不打扰for循环。假设你真正需要的是px和py,我会这样做 -

px = a * X;
py = a * Y;