我1D的資料是由左到右依序顯示…可是如果資料多筆的話,1D資料會顯示到螢幕以外去,有辦法用2D的方式當資料顯示到第一列後面時自動跑到第二列由左至右又繼續顯示下去…以此類推…謝謝
可以,這方面的問題,可以參考之前的討論,關鍵在於Replace array,index array,
array subsets的觀念
對阿...希望「初學者請多多包函」自己先試著解決,如果真的不能解決的話,在告訴大家您的困難對在哪裡?如:對於icon的使用不熟悉...等等...給自己一些挑戰...你會進步的更快唷.
謝謝你的指教…當然我有做過…只不過我想知道有辦法用幾各VI組合就用出來嗎?我是用幾個判斷的和相加相等弄出來的…就是有點複雜…所以我才想問一下有更好的辦法嗎…謝謝
你可以思考一下,
假設你的 2D array 的 row 長度為10,
那麼你必需將原來的 1D Array 每10個取出來,
然後組成 2D array。
這個動作肯是很重覆性的動作,
思考方向:
1. LabVIEW 什麼元件可以完成重覆性的動作?
2. 什麼方法可以讓你取出1D array 中的部分成員來?
3. 什麼方法可以讓你1D array 的部分成員組成新的 2D array?
然下來是防呆了。
有幾個地方要注意的:
1. 1D array 的長度不一定是 10的倍數。
2. 1D array 每10 個取一次,取到什麼時候停止?
這個都是你在完成程式時,所要去考慮到的。
謝謝....你的意思我知道....可是我的意思不是將已抓好的10個1D資料置換到2D資料的第一列~然後又抓好10個在置換到第2列...這樣對我來說是多了一個步驟~我是要一個一個將現抓的值直接放入2D的位置中...
我遇到較困難之處"是換行的問題及資料放到最後一格時又要從第一列第一格開始放起"...
所以我加了判斷到每列的最後一格時讓他換列又判斷到最後一格時讓列數和格數歸零....但是這樣寫有時自己眼睛都看花了~~所以ARRAY裡的VI我都試過~~換列和從頭的動作幾乎是要自己寫...想請問有比我這樣寫還簡要的方式嗎?謝謝
上面的大大,下面是您要的嗎


資料超過25個後,就會從第一個開始覆蓋資料
因為你的 2D array 並不用來保留所有的資料,
所以我在想,
你應該是將這個 2D array 拿來觀察大筆資料之用。
如果是這樣子的話,可以設定 1D array 的 Property Node,
(Index Value)
讓程式自行將 array 做捲動的動作即可。
這樣你就可以即時看到最新的資料。
另外,觀察大筆資料時,
「List & Table」,這些具有捲軸的元件,是不錯的選擇。
kia大大~~~你的方法還不錯~~不過為什麼你用了兩組"Quotient & Remainder"~我用一個好像就可以了不過還是謝謝你指點...我也不用用一堆VI了(我怎沒想到這一步~呵)
Airbolt也謝囉~~迴旋的方式我也弄過~~可是老闆就是要看到整個有沒有剛好跑到歸零點又從頭~~還有在來我就要即時比較2D陣列上的最大和最小值~~這樣弄成2D也比較好看到最大最小值有沒有準~~~

我用2個Quotient & Remainder ,是當值跑到第26個時,他會將值覆蓋回第一個的位置,另外,我將程式修改一下,當他重新跑第一個值的時候,他會載入初始值,將矩陣歸零,和現在的矩陣會輸出最大最小的值