2015-07-03 28 views
2

我有一個應用程序,我在我的角度應用程序借鑑了很多的小nvd3圖表一jqGrid的表內。我正在用$ compile編譯圖表。不過,我注意到隨着數據量的增加,性能變得越來越慢(繪製1個小圖的速度還相當快,但要等待整個過程需要很長時間)性能nvd3的

我注意到這是在此基礎上post一個已知的問題,因爲它的DOM操作。我嘗試了幾個技巧,比如依次編譯圖表等,但它仍然感覺很慢。是否有解決此問題的已知解決方法?

+1

一般而言,使用帆布代替SVG會給你一個提高性能。對於NVD3來說,這不是一個真正的選擇,因爲在整個庫中使用SVG是硬連線的。所以簡短的回答是否定的。 –

回答

0

我找到了一種方法,以提高性能。我張貼這個來幫助其他與我有同樣問題的人。

問題是: 我把每個nvd3圖表作爲小的可重用組件作爲角度指令,結果我需要在jqgrid中繪製它時調用$ compile。

$ compile實際上並不是最快的方法,因此刪除$ compile call並直接在jqgrid中使用<svg></svg>解決了我的問題。

所以,如果你有性能問題,並且你調用$編譯,也許做的第一件事是刪除$編譯調用。我對Angular來說很新穎,所以希望這可以幫助那些有相同概率的人。

+0

嗨blenzcoffee,我遇到使用nvd3庫同樣的問題。我非常喜歡angular和d3,所以我想在你的解決方案中詢問更多細節,如果可能的話。我正在嘗試加載大約80,000行的文件,但速度太慢。任何幫助非常歡迎。 –