有6條這樣的樣的值轉成的直條圖(下圖是其中一條)
如果不在這個活頁簿中即時觀看的話,數據並不會有流失的狀況
但只要是在這個活頁溥中即時察看的話,數據就會失真,EXCEL有辦法改善嗎?
我需用到 excel 去抓取電腦軟體的數據資料(大量,每秒要抓取30個數據)
匯入excel做處理
處理後立即轉成即時圖檔方式呈現
在2010版本excel時可能因為我電腦效能不夠
這個excel的即時呈現的圖檔隨著抓去取的時間慢慢變增加
資料也慢慢再增加,即時圖檔呈現的圖因為顯示的資料變多
這個圖檔慢慢失真,excel變的很卡很頓
(大約抓20分鐘左右就已經慘不卒睹)
一天下來抓取數據的這個excel檔案大約20M
我下定決心組了一台5.6萬元臺幣的電腦主機
CPU intel i7 12700 2.1GHz
RAM T Force 32G DDR4 ×2
顯示卡VGA 華碩Dual RTX3060 O12G V2 (1867MHz)
內接硬碟SSD
excel 版本2019
以上配備想說這新電腦應該可以解決圖檔慢慢失真,excel變的很卡很頓
的問題
結果沒有.....
狀況一樣,新配備的電腦跑出來的圖和舊電腦(舊電腦快10年了)的情形一樣
問題來了,我該怎麼樣才能讓即時圖檔不會慢慢失真,excel不會隨著資料變多變的很卡很頓。又或者我應該把資料再由excel轉到另一個圖檔軟體來呈現即時圖檔?有建議的軟體嗎?
麻煩高手大大了,謝謝
1.圖表失真的問題
因為資料太多,多到螢幕解析度都無法顯示,太細的地方無法呈現,即時圖表當然看起來會失真.....
你要在1920寬像素的螢幕像素中塞1000筆資料還ok,塞20000筆資料時螢幕怎麼呈現!? 一定有些細節會被忽略! 每秒鐘抓一次,一天5小時就18000筆資料了,一周5天就9萬筆資料了,9萬筆資料如何塞進固定大小解析度可能是1200x800的圖片裡?!
一開始每筆都能呈現,到後來就越來越模糊了!
(如同一張解析度很高的照片被縮小時,很多細節就會失真無法呈現)
像看股票K線一樣,資料量多的時候,就要切換週期。
看三天可以看60分K,看三個月就得切成日K線周期。
如果看三個月的時間區間卻用1分鐘K來呈現,那圖看起來一定會失真的,製圖時也會卡頓的。
2.卡頓的問題
EXCEL資料量很大時,又製作一堆統計圖表的話,卡頓是正常的,EXCEL的架構極限就在那邊。
所以建議製作即時圖表的取樣週期以及方式需要做調整,才能改善問題
(例如減少取樣數量、改變圖表呈現方式...等)
我的資料每日都會產出一份excel資料檔出來,
隔日會有新檔案產出,資料會重新紀錄,不會與前一日的資料出現,只是一天會抓24小時就是了
我的資料每日都會產出一份excel資料檔出來,
隔日會有新檔案產出,資料會重新紀錄,不會與前一日的資料出現,只是一天會抓24小時就是了
圖檔如果是存 jpg 那種
還有破壞性壓縮的問題
存越多次越糊
現在就是不知道原本是怎麼實作的
就無法判斷了
是阿~版主敘述個大概,我們也只能幫忙想個大概了
有6條這樣的樣的值轉成的直條圖
如果不在這個活頁簿中即時觀看的話,數據並不會有流失的狀況
但只要是在這個活頁溥中即時察看的話,數據就會失真,EXCEL有辦法改善嗎?
如果不在這個活頁簿中即時觀看的話,數據並不會有流失的狀況
但只要是在這個活頁溥中即時察看的話,數據就會失真,EXCEL有辦法改善嗎?
失真的位置是左邊沒有資料的地方嗎?
我再重新理解一下原PO的問題.....
原PO所謂的圖表失真,是指你的EXCEL正在執行每秒都在接收數據的工作,但當你偶而想看即時圖表時,會做顯示即時圖表的操作。
但EXCEL因為資料量越來越大,計算即時圖表時間較久的關係導致卡頓假設60秒,也會連帶60秒沒有接收到數據,類似這樣的困擾狀況嗎?
先跟原PO確認一下,原PO的問題狀況...應該是指想要解決EXCEL製圖表運算的卡頓期間會導致遺漏接收資料!?
這裡還要確認一下,原PO抓資料的方式是用DDE?
是DDE
我是需要這個活頁中的圖能一直即時觀看
但是因為一直停留在這個活頁時圖檔顯示的資料越來越多
圖資料越來越多就會讓excel變慢,卡頓,使得資料會少抓到,結果顯示的圖是有缺資料的
我只能切換到其他沒有圖檔的活頁,減少效能負載,
資料才不會漏抓,但這樣就達不到我要隨時看圖的目標了
這樣終於釐清真正的問題與方向了XD
一個活頁簿在計算時是以它能掌控的資源做全力計算,其他的工作可能都會暫停。
就算有獨立顯卡也還真幫不上忙.....
1.先確定效能有全開,檢查core是否全部使用了。
2.再來可以先試試拆開檔案的架構分工,是否能有效改善
DDE數據由檔案A.xlsx專職接收,圖表則從檔案B.xlsx統計繪製,資料來源從檔案A抓過來。
(兩個獨立檔案分別開啟,不是子視窗的型態)
檔案B的資料來源格式大致如下,依此類推修改:
=[a.xlsx]工作表1!$B$3:$H$15
請問 2.如果以2個excel做分工處理,那
a.xlsx 在沒有隨時以手動方式執行存檔的情況下
那麼b.xlsx還能出現即時的資料嗎?
能阿~
不過你的a.xlsx會一直動態增加新資料,這情況就要試試看才知道效果如何了
若不行的話,再考慮複雜一點的方式,讓B.xlsx做製圖計算簡化調整
用到 excel 去抓取電腦軟體的數據資料(大量,每秒要抓取30個數據)
我個人覺得...
Excel 比較適合用來統計分析(長週期的資料)
而不是即時監控(短時間高頻資料)
試想
「每秒」資料都在變化
等於每秒 Excel 都要「重新計算全部公式」「更新所有圖表」
也許這一秒鐘還沒做完
下一秒鐘資料又進來了
才會造成惡性循環...
解決之道不外乎「減少資料量」「降低抓資料頻率」
通常會得到「辦不到」的回應
接著就只能把 Excel 換掉
改用 socket 的方式傳輸資料
(詳情請洽股票軟體開發公司)