2017-10-09 79 views
0

在MATLAB(R2016a)中,使用vertcat附加一個數組(或使用常規附加[A; B])會產生矩陣,其中的矩陣已按比例縮小爲0.0001,而不是1。10000個修復乘以那些矩陣的問題,但我想知道爲什麼0.0001是附加的,而不是1。這裏是代碼:Matlab在添加矩陣時更改數組值錯誤

temp = ones([1,307200]); new_coords = vertcat(world_coords, temp); new_coords

導致列像下面正在輸出:

0.4449 0.3673 1.8984 0.0001

world_coords的類型是雙重的,所以我不認爲類型轉換是問題。

+0

什麼是world_coords的範圍(最小值,最大值)?你確定輸出前沒有10^4嗎? – Irreducible

+0

謝謝,那正是問題所在。問題是矩陣有307200行,所以10^4被輸出的其餘部分吞噬。愚蠢的問題。如果您願意,我可以將您的答案標記爲正確。再次感謝。 – mgrenander

+0

很高興我能幫到你 – Irreducible

回答

0

正如我在評論中提到的那樣,由於world_coords中值的範圍,輸出被縮放。您應該在輸出的第一行看到一個比例因子1.0e+4

您可以更改輸出格式,例如有:

format long 

有關詳細信息,請參閱:format