一個XML格式數(shù)據(jù)轉(zhuǎn)換為圖表的例子
更新時間:2010年02月09日 12:16:22 作者:
這個例子使用的是轉(zhuǎn)換為VML的語法,換成其他如SVG的語法,就可以轉(zhuǎn)換成為SVG圖形,單元數(shù)量可以任意加。
源文檔

模板文檔(這里收縮了js代碼,代碼放在CDATA段里)
這個例子使用的是轉(zhuǎn)換為VML的語法,換成其他如SVG的語法,就可以轉(zhuǎn)換成為SVG圖形,單元數(shù)量可以任意加。
其實還有更多已經(jīng)完成的例子,包括生成單位樹(支持動態(tài)獲取數(shù)據(jù)并生成節(jié)點列表),生成編輯界面(可更新數(shù)據(jù)庫)等等。
源代碼在一個大的類庫里面,需要提取修改后再發(fā),以便獨立使用。
對于這種轉(zhuǎn)換方式,請朋友們發(fā)表高見,不吝賜教。
ps.效率還湊合,生成(轉(zhuǎn)換)并顯示(innerHTML)出這個餅圖,有瞬間5%的CPU占用率。我的機器T2080 1.73GHz,2G 667內(nèi)存。轉(zhuǎn)換代碼很早的時候在FF1.07和opera8.5下測試通過,后來做了部分改動(非核心),應(yīng)該沒有失去兼容性。顏色方面,應(yīng)該有更好的方法生成區(qū)分度較高的顏色,現(xiàn)在的方法生成的顏色有些太相近。

模板文檔(這里收縮了js代碼,代碼放在CDATA段里)
| 源文檔 |
![]() |
| 模板文檔(這里收縮了js代碼,代碼放在CDATA段里) |
![]() |
| 結(jié)果 |
![]() |
其實還有更多已經(jīng)完成的例子,包括生成單位樹(支持動態(tài)獲取數(shù)據(jù)并生成節(jié)點列表),生成編輯界面(可更新數(shù)據(jù)庫)等等。
源代碼在一個大的類庫里面,需要提取修改后再發(fā),以便獨立使用。
對于這種轉(zhuǎn)換方式,請朋友們發(fā)表高見,不吝賜教。
ps.效率還湊合,生成(轉(zhuǎn)換)并顯示(innerHTML)出這個餅圖,有瞬間5%的CPU占用率。我的機器T2080 1.73GHz,2G 667內(nèi)存。轉(zhuǎn)換代碼很早的時候在FF1.07和opera8.5下測試通過,后來做了部分改動(非核心),應(yīng)該沒有失去兼容性。顏色方面,應(yīng)該有更好的方法生成區(qū)分度較高的顏色,現(xiàn)在的方法生成的顏色有些太相近。
相關(guān)文章
js中如何復(fù)制一個對象并獲取其所有屬性和屬性對應(yīng)的值
如果知道這個對象的所有屬性自然就可以重新new一個,然后對每個屬性賦值,就可以做到,但如果不知道呢?如何創(chuàng)建一個內(nèi)容相同 的對象呢?下面有個不錯的示例,大家可以看看2013-10-10
微信小程序報錯: thirdScriptError的錯誤問題
這篇文章主要介紹了微信小程序報錯: thirdScriptError,本文給大家分享解決方法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06
js和jquery中循環(huán)的退出和繼續(xù)下一個循環(huán)
退出循環(huán),使用break;退出當(dāng)前循環(huán)繼續(xù)下一個循環(huán),使用continue,jquery中使用return false;continue,使用return true2014-09-09
微信小程序第三方框架對比 之 wepy / mpvue / taro
這篇文章主要介紹了小程序第三方框架對比 ( wepy / mpvue / taro ) 分析,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2019-04-04
JS組件系列之Bootstrap Icon圖標(biāo)選擇組件
這篇文章給大家介紹js組件系列之Bootstrap Icon圖標(biāo)選擇組件,對bootstrap icon圖標(biāo)相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧2016-01-01
基于JavaScript或jQuery實現(xiàn)網(wǎng)站夜間/高亮模式
這篇文章主要介紹了基于JavaScript或jQuery實現(xiàn)網(wǎng)站夜間/高亮模式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05



