2012-01-12 80 views
2

我已經創建了一個X-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 

回答

1

有許多MATLAB函數可以用來得到一個隨機值的矩陣。
randi(maxi, X, Y)看起來像這裏更有用。
的Get乘坐循環:

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); 
+0

我想創建),其中的點都顯示randomly.But當我使用蘭特(矩形矩陣功能點集中在0和1之間,所以爲了繪製整個矩形中的點,我將矩形的長度和寬度相乘。但主要問題是我想繪製乘法後矩陣的所有值,這會給出錯誤 – 2012-01-12 18:37:14

+0

你可以使用'randi(maxi,x,y)' – Ali 2012-01-12 18:39:49

+0

你能告訴我如何繪製兩個不等向量? – 2012-01-12 18:41:12

1

的每次迭代的 「for」 循環覆蓋X,PX,y和PY與新值,因此它會刪除所有舊值。說實話,我甚至不會打擾for循環。假設你真正需要的是PX和PY,我只想做這個 -

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

謝謝吉姆!!!!!! – 2012-01-12 18:41:38