新聞中心
JavaScript通過RGraph如何實現(xiàn)動態(tài)儀表盤?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
目前針對于統(tǒng)計圖的制作方法有很多,可以直接利用快逸報表中的自帶統(tǒng)計圖,還可以通過自定義統(tǒng)計圖個性化定制,當(dāng)然除此之外,在新的HTML5標(biāo)準(zhǔn)中,新增了一個非常重要的元素—canvas元素。使用該元素,可以在頁面中直接進行各種復(fù)雜圖形的制作。因此,如果使用該元素繪制統(tǒng)計圖,比之前使用服務(wù)器端控件來生成統(tǒng)計圖的方法更加具有優(yōu)越性,因為使用了該元素之后,繪制統(tǒng)計圖的工作是直接在客戶端進行的,而不再是在服務(wù)器端所完成的了。這不僅意味著不再占用服務(wù)器端的資源,而且意味著可以直接利用客戶端計算機的強大資源,繪制統(tǒng)計圖的速度也就可以大大地得到提高了。而且,因為用來控制canvas圖形繪制的腳本代碼是可以被壓縮的(例如,當(dāng)你使用Apache服務(wù)器的時候,mod_gzip將自動幫你執(zhí)行代碼壓縮工作),可以被緩存的,所以也就可以大幅度地減少帶寬的占用了。本文就介紹了這樣一款制作統(tǒng)計圖的插件。設(shè)想一下,假如由于客戶端的訪問,服務(wù)器端每天需要創(chuàng)建100,000幅統(tǒng)計圖,這對服務(wù)器端來說,無疑是一個非常巨大的資源占用。
本文介紹一款名叫Rgraph的插件,使用RGraph統(tǒng)計圖制作插件的話,可以將這個資源占用減少到接近零的程度,因為所有創(chuàng)建統(tǒng)計圖的工作都是在客戶端完成的,就像渲染HTML網(wǎng)頁一樣,服務(wù)器端只負(fù)責(zé)發(fā)送數(shù)據(jù),不再負(fù)責(zé)統(tǒng)計圖的生成與發(fā)送了,同時帶寬的占用情況也大大得到了改善。
另外,由于統(tǒng)計圖是依靠JavaScript來生成的,所以當(dāng)你查看這個顯示統(tǒng)計圖的HTML網(wǎng)頁的時候,該網(wǎng)頁是可以為離線狀態(tài)的了。
對于瀏覽器來說,目前該插件受到了Firebox 4,Google Chrome 10,Opera 11,Safari 5、IE9瀏覽器的支持。
官網(wǎng)網(wǎng)站為:http://www.rgraph.net/examples/index.html !
我今天就做關(guān)于儀表盤的實現(xiàn),三個儀表盤,不同樣式而已!效果如下:
你可以設(shè)置頭內(nèi)容如 :java小強 這個標(biāo)題的內(nèi)容和樣式,也可以設(shè)置底部的內(nèi)容和樣式,如:cuisuqiang@163.com !
第一次和第三個創(chuàng)建時:
var gauge1 = new RGraph.Gauge('cvs1', 0, 100, 84);
var gauge3 = new RGraph.Gauge('cvs3', -100, 100, 84);
繪圖的地址,最小值,大值和當(dāng)前值,第二個參數(shù)有點不同:
var gauge2 = new RGraph.Gauge('cvs2', 0, 200, [184,12]);
由于他是兩個指針,所以當(dāng)前值參數(shù)是一個數(shù)組。
那么有的人說了,那我想畫三個指針怎么辦,很簡單,傳三個參數(shù)!
我們整個頁面的源碼給大家看一下,運行后就是上面的效果:
Examples of the Gauge chart
新聞名稱:JavaScript通過RGraph如何實現(xiàn)動態(tài)儀表盤-創(chuàng)新互聯(lián)
標(biāo)題URL:http://www.dlmjj.cn/article/dcjcij.html