999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于JS Charts實(shí)現(xiàn)Web應(yīng)用數(shù)據(jù)的可視化

2019-11-30 00:12:10劉班
電子技術(shù)與軟件工程 2019年20期
關(guān)鍵詞:圖表可視化定義

文/劉班

1 概述

數(shù)據(jù)分析是通過對大量數(shù)據(jù)的分析統(tǒng)計(jì)來預(yù)測事物發(fā)展趨勢的技術(shù)。但由于數(shù)據(jù)的文本化原始呈現(xiàn),導(dǎo)致一般的用戶從這些抽象的數(shù)據(jù)中無法獲得自己所需要的重要信息。數(shù)據(jù)可視化技術(shù)的出現(xiàn)很好地解決了這個問題。該技術(shù)將通過數(shù)據(jù)分析技術(shù)得到的數(shù)據(jù)轉(zhuǎn)換為形象的圖表,通過這些圖表可以使得數(shù)據(jù)分析的結(jié)果得到形象展示。

JS Charts是一款使用Javascript語言開發(fā)的圖表生成組件,開發(fā)者可以通過該組件很容易地實(shí)現(xiàn)數(shù)據(jù)的可視化。該組件的運(yùn)行不需要任何額外插件或者服務(wù)器端模塊。應(yīng)用開發(fā)者只需要編寫少量的客戶端Javascript代碼就可以驅(qū)動JS Charts在Web瀏覽器中將來自前后端的數(shù)據(jù)轉(zhuǎn)換成各類常用圖表并顯示出來。

2 JS Charts的特點(diǎn)

JS Charts是一款免費(fèi)的原生Javascript開源組件,具有良好的跨平臺性。其運(yùn)行不需要任何服務(wù)器端插件和模塊的支持,能夠與現(xiàn)有Web應(yīng)用程序?qū)崿F(xiàn)無縫集成。開發(fā)者可以在許可證授權(quán)的情況下,根據(jù)自己的應(yīng)用需求修改JS Charts的源代碼實(shí)現(xiàn)特定功能和效果。JS Charts提供的圖表類型豐富,包括了常見的柱狀圖、餅圖以及曲線圖,并支持各類圖表的動畫顯示功能,可以很容易地在IE、Firefox、Chrome、Safari、Opera等常見瀏覽器中顯示圖表效果。

3 JS Charts的使用

JS Charts的易用性非常好,應(yīng)用開發(fā)者只需訪問官網(wǎng)http://www.jscharts.com下載支持文件jscharts.js,并將該文件包含到需要使用這個圖表庫的Javascript程序文件中即可。在jscharts.js文件中不僅包含了在Web瀏覽器中繪制圖表和文本所需要的庫,還包含了驅(qū)動IE瀏覽器繪圖所需的畫布函數(shù)。

JS Charts在繪制圖表之前,需要開發(fā)人員預(yù)先指定一個圖表容器,這個容器用于顯示圖表,可通過div標(biāo)簽描述。然后借助語句var myChart=new JSChart('chartcontainer','line');將該div與指定圖表關(guān)聯(lián)起來,并指定圖表類型為line曲線圖,后期也可以根據(jù)應(yīng)用需要更改為bar柱狀圖類型或pie餅圖類型。有了前面兩步的基礎(chǔ),開發(fā)者就可以繼續(xù)為圖表的繪制準(zhǔn)備數(shù)據(jù)了。JS Charts支持的數(shù)據(jù)形式有Javascript數(shù)組、JSON文件以及XML文件三種。其中,以Javascript數(shù)組形式的數(shù)據(jù)最為常見,另外兩種數(shù)據(jù)形式與數(shù)組形式的數(shù)據(jù)類似。在圖表中一般都至少包含一個數(shù)據(jù)系列,而一個數(shù)據(jù)系列又包含多個數(shù)據(jù)。因此,在數(shù)組形式的數(shù)據(jù)中通常需要再包含多個數(shù)組,內(nèi)層包含的每一個一維數(shù)組可以用來描述圖表數(shù)據(jù)系列中的一個數(shù)據(jù),內(nèi)外兩層一維數(shù)組構(gòu)成一個二維數(shù)組,準(zhǔn)確描述圖表中包含的數(shù)據(jù)系列。這類二維數(shù)組一般通過語句var myData=new Array(['unit',20],['unit two',10],['unit three',30],['other unit',10],['last unit',30]);進(jìn)行定義。除此以外,還需要使用JS Charts提供的setDataArray方法將數(shù)組數(shù)據(jù)加載到圖表中。不同類型的數(shù)據(jù)采用的加載方法是有差別的,JSON文件形式數(shù)據(jù)的加載方法是setDataJSON,XML文件形式數(shù)據(jù)的加載方法是setDataXML。

在圖表數(shù)據(jù)的支持下,開發(fā)者就可以通過調(diào)用JS Charts的draw方法實(shí)現(xiàn)圖表的繪制操作。為滿足開發(fā)者的個性化需要,JS Charts還提供了兩種定制圖表外觀的方法。一種方法是通過JS Charts內(nèi)置的函數(shù)實(shí)現(xiàn)圖表外觀定制,開發(fā)人員可以選用不同的函數(shù),并傳遞給這些函數(shù)具體的參數(shù),來實(shí)現(xiàn)對圖表外觀的控制。另一種方法是通過選項(xiàng)組來實(shí)現(xiàn)定制,類似于編寫外觀配置文件,開發(fā)者可以將外觀配置選項(xiàng)組插入JSON格式數(shù)據(jù)文件或XML格式數(shù)據(jù)文件中,從而精確設(shè)置圖表各組成部分的外觀。

在JS Charts中,除了支持常規(guī)的單數(shù)據(jù)系列的圖表顯示功能之外,還支持多數(shù)據(jù)系列在同一個圖表中的對比顯示功能,可以讓開發(fā)者更為方便地開發(fā)出具有數(shù)據(jù)比較功能的圖表應(yīng)用。在生成多數(shù)據(jù)系列的圖表中,JS Charts目前僅支持柱狀圖和曲線圖兩種圖表類型。在編寫這種特殊的多數(shù)據(jù)系列圖表生成代碼時(shí),必須先提供多個數(shù)據(jù)系列所對應(yīng)的數(shù)據(jù)。比如要生成同時(shí)顯示兩個數(shù)據(jù)系列的曲線圖表,采用數(shù)組形式的數(shù)據(jù),那么就要將定義數(shù)據(jù)的代碼寫為var myData1=new Array(['unit',20],['unit two',10],['unit three',30],['other unit',10],['last unit',30]);var myData2=new Array(['unit',40],['unit two',20],['unit three',10],['other unit',50],['last unit',20]);的形式。可見,有多少個數(shù)據(jù)系列,就要定義多少組對應(yīng)的數(shù)據(jù)。當(dāng)使用XML文件形式的數(shù)據(jù)時(shí),與數(shù)組形式的數(shù)據(jù)類似,要明確加上id屬性,實(shí)現(xiàn)對數(shù)據(jù)系列的區(qū)別控制。比如定義了曲線圖表對應(yīng)的一個id為first line的數(shù)據(jù)系列。但在定義多系列柱狀圖表的時(shí)候,要將多數(shù)據(jù)系列的數(shù)據(jù)同時(shí)定義到一個二維數(shù)組中。比如將上面定義的包含兩個數(shù)據(jù)系列的曲線圖表轉(zhuǎn)換為柱形圖表時(shí),就需要將數(shù)據(jù)定義改寫為var myData=new Array(['unit',20,40],['unit two',10,20],['unit three',30,10],['other unit',10,50],['last unit',30,20]);的形式,即將內(nèi)層數(shù)組變成包含3個元素的一維數(shù)組。在加載這些數(shù)據(jù)系列的時(shí)候,也要注意設(shè)置一個能夠識別這些數(shù)據(jù)系列的名稱選項(xiàng)。比如在曲線圖表中加載上面定義的兩個數(shù)據(jù)系列時(shí),要分別使用 setDataArray(myData1,‘line1’);和setDataArray(myData1,‘line2’);來實(shí)現(xiàn)。其中的字符串名稱line1和line2就是用來識別這兩個數(shù)據(jù)系列的標(biāo)識,在定制這兩個數(shù)據(jù)系列外觀的時(shí)候就需要用這兩個標(biāo)識來區(qū)別對應(yīng)的兩個數(shù)據(jù)系列。當(dāng)包含多數(shù)據(jù)系列的圖表顯示時(shí),為了能給用戶清晰的數(shù)據(jù)比較呈現(xiàn),通常都需要將圖表中多個數(shù)據(jù)系列對應(yīng)的圖形圖像的外觀配置得具有明顯的視覺對比效果。定制曲線圖表時(shí),只需要使用每個數(shù)據(jù)系列的標(biāo)識就可以正確識別它們,但在定制柱狀圖表的時(shí)候,就應(yīng)該使用編號來識別這些數(shù)據(jù)系列。比如要分別設(shè)置包含兩個數(shù)據(jù)系列的柱狀圖表背景顏色,那么就應(yīng)寫為setBarColor(顏色1,1);和setBarColor(顏色2,2);的形式,其中的數(shù)字1和2分別對應(yīng)兩個數(shù)據(jù)系列。這樣,通過視覺效果上適合的區(qū)別化定制操作,就可以生成清晰美觀,并且對比明顯的多數(shù)據(jù)系統(tǒng)數(shù)據(jù)圖表了。

4 結(jié)語

隨著大數(shù)據(jù)技術(shù)和數(shù)據(jù)分析技術(shù)的發(fā)展,各類計(jì)算機(jī)應(yīng)用軟件對于數(shù)據(jù)可視化組件的需求越來越大。目前提供數(shù)據(jù)可視化的JS或HTML5組件雖然很多,但JS Charts作為一款輕量級的免費(fèi)開源Javascript圖表腳本庫,憑借其豐富的功能、兼容性好、可定制性強(qiáng)以及易于使用的特點(diǎn)嶄露頭角,受到了越來越多的Web應(yīng)用開發(fā)人員的喜愛。可以預(yù)見,隨著JS Charts的不斷完善,我們以后將會在更多的Web應(yīng)用中看到使用JS Charts開發(fā)的圖表效果。

猜你喜歡
圖表可視化定義
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運(yùn)行動態(tài)分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創(chuàng)新
傳媒評論(2019年4期)2019-07-13 05:49:14
雙周圖表
足球周刊(2016年14期)2016-11-02 10:54:56
雙周圖表
足球周刊(2016年15期)2016-11-02 10:54:16
雙周圖表
足球周刊(2016年10期)2016-10-08 18:30:55
圖表
世界博覽(2016年16期)2016-09-27 18:25:26
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
修辭學(xué)的重大定義
主站蜘蛛池模板: 大学生久久香蕉国产线观看| 国产视频资源在线观看| 99久久99视频| 国产成人AV男人的天堂| 中美日韩在线网免费毛片视频| 91久久国产成人免费观看| 国产主播一区二区三区| 久久伊人操| 婷婷午夜天| 国产亚洲精品91| 亚洲三级成人| 亚洲天堂在线视频| 视频国产精品丝袜第一页| 国产va欧美va在线观看| AV不卡无码免费一区二区三区| 青青青国产视频手机| 久久综合色天堂av| 国产在线专区| 免费高清a毛片| 国产成人精品午夜视频'| 亚洲v日韩v欧美在线观看| 亚洲人免费视频| 亚洲综合在线最大成人| 青青青视频91在线 | 免费视频在线2021入口| 欧美日本在线| 成人韩免费网站| 91久久夜色精品国产网站| 亚洲成a人片在线观看88| 97视频在线精品国自产拍| 亚洲第一福利视频导航| 免费高清毛片| 秘书高跟黑色丝袜国产91在线| 国产在线小视频| 久久国产V一级毛多内射| 久久精品免费国产大片| 午夜老司机永久免费看片| 国产精品刺激对白在线| 久久久久中文字幕精品视频| 欧美日韩在线观看一区二区三区| av一区二区人妻无码| 欧美伦理一区| 91在线视频福利| 91色在线观看| 国产成熟女人性满足视频| 亚洲欧洲日韩综合| 国产日韩欧美在线播放| 免费高清自慰一区二区三区| 日本精品视频一区二区| 永久免费无码成人网站| 国产人免费人成免费视频| 高清不卡毛片| 国产在线精品99一区不卡| 亚洲不卡无码av中文字幕| 欧美日韩综合网| 在线观看无码a∨| 亚洲 欧美 偷自乱 图片 | 久久久黄色片| 91麻豆国产视频| 亚洲免费福利视频| 亚洲第一视频网| 丝袜久久剧情精品国产| 日韩福利视频导航| 国内精品自在欧美一区| 国产xx在线观看| 又黄又湿又爽的视频| 亚洲国产高清精品线久久| 亚洲无码精彩视频在线观看| 亚洲欧美激情小说另类| 久久网欧美| 永久免费AⅤ无码网站在线观看| 久久不卡国产精品无码| 成人国产小视频| 久久久精品久久久久三级| 亚洲一区二区三区国产精品 | 五月天综合网亚洲综合天堂网| 国产精欧美一区二区三区| 97超爽成人免费视频在线播放| 麻豆AV网站免费进入| 国产欧美专区在线观看| 亚洲乱强伦| 日本一区二区三区精品国产|