一、引言: 實習單位安排讓調(diào)研報表工具選擇一款,讓學習和比較ChartDirector與Jasperreports,掌握技術路徑,即掌握安裝配置方式,接口,調(diào)用方法,例子等。 于是,下載了ChartDirector,挺簡單的,照著提供的jsp的例子,改一下數(shù)據(jù)、橫坐標內(nèi)容就馬上能運行了,提供的函數(shù)命名也很規(guī)范,一看大概就知道用途,挺好理解的,生成的圖表也很漂亮。 于是,下載Jasperreports,這個東東要跑起來還真有點麻煩,首先得了解一下ANT,ant不難,但是為了運行一下示例還是被它拉路了一小會,然后是jdk版本兼容問題,然后是數(shù)據(jù)源的連接問題,折騰了一個星期,總會把它的示例都跑起來了,同時也寫了三份學習筆記。接著了解了一下它的可視化設計工具ireports??偟母杏X這個東西不如ChartDirector方便好用。 接著,跟莫sir討論一下,發(fā)現(xiàn)自己犯了一個很嚴重的概念性錯誤。那就是,圖表和報表是不同的!圖表是指圖片,即柱狀圖,折線圖,餅圖等,選擇圖表工具主要關注的是圖表是否漂亮;而報表是指表格形式的表,如財務報表等,選擇報表工具主要關注的是能否解決中國報表表頭復雜,交叉報表等問題。ChartDirector是圖形報表工具;而Jasperreports是報表工具,生成圖表底層用的是JreeChart。所以,應該比較的是ChartDirector與JreeChart,而不是ChartDirector與Jasperreports的比較。 下面主要介紹和比較ChartDirector與JreeChart這兩款web圖形報表工具。
二、 ChartDirector與JreeChart的介紹與比較 2.1 官方網(wǎng)址 ChartDirector: http://www.advsofteng.com/ JreeChart: http://www.jfree.org/jfreechart/index.html 2.2 基本介紹 兩款都是流行的web圖表工具; ChartDirector: ChartDirector is a fast and powerful charting component for creating professional and clickable charts. It‘s innovative ChartDirector Mark Up Language, flexible object oriented API, layering architecture and advanced coloring system provide unprecedent chart design, formatting and customization capabilities to developers. Supports numerous chart types - Pie, donut, bar, line, spline, step line, trend line, curve-fitting, inter-line coloring, area, scatter, bubble, floating box, box-whisker, waterfall, finance (numerous indicators support), gantt, vector, radar, polar, rose, angular and linear meters and guages. ChartDirector is 100% pure Java code and is suitable for both client and server side usage. Specially designed graphics subsystem allows ChartDirector to run on headless servers without requiring headless support. Includes SWING controls to support client side applications. Easy to use and with comprehensive documentation. Come with numerous examples.
JreeChart: JFreeChart是一個開源的 JAVA 項目,它主要用來開發(fā)各種各樣的圖表,這些圖表包括:餅圖、柱狀圖 ( 普通柱狀圖以及堆棧柱狀圖 ) 、線圖、區(qū)域圖、分布圖、混合圖、甘特圖以及一些儀表盤等等。在這些不同式樣的圖表上可以滿足目前商業(yè)系統(tǒng)的要求。 JFreeChart 是一種基于 JAVA 語言的圖表開發(fā)技術。 JFreeChart 可用于 Servlet 、 JSP 、 Applet 、 Java Appication 環(huán)境中,通過 JDBC 可動態(tài)顯示任何數(shù)據(jù)庫數(shù)據(jù),結合 Itext 可以輸出至 PDF 文件。
2.3 收費情況 ChartDirector: 商業(yè);價格根據(jù)使用權限不同在59美元到749美元之間;也可以免費使用,只是在畫出來的圖形下面都有一條它的廣告條。網(wǎng)上有破解方法,破解后圖形下面不再出現(xiàn)它的廣告條。
JreeChart: 開源;但是文檔要花錢買,40美元;
2.4 支持語言 ChartDirector: 支持很多種語言,例如.NET, Java, ASP, COM,VB, PHP, Perl, Python,Ruby, ColdFusion, C++等; JreeChart: Java;
2.5 圖表比較 ChartDirector: 圖表特別精細,漂亮; 樣例庫:http://www.advsofteng.com/gallery.html
JreeChart: 畫出來的圖形不夠精細,看起來有些模糊;圖表的文字邊緣、顏色和顏色的分界也比較模糊。 樣例庫: </body> </html> 畫出來的圖: 和ChartDirector畫出來的圖做一個比較: 四、 web圖表工具選擇 了解了關鍵的兩款web圖表工具ChartDirector與JreeChart之后,我們應該選擇哪一個報表工具呢?下面是本人提供的參考方案: ChartDirector:圖片精細漂亮,如果舍得花錢購買,建議使用這款; JreeChart:圖片不夠清晰有些模糊,如果只考慮免費工具,建議使用這款;
五、 參考資料 1. http://www.advsofteng.com/ 2. http://www.jfree.org/jfreechart/index.html 3. ChartDirector (Java Edition) http://nuclearscripts.com/java/jsp-and-servlets/graphs-and-charts/chartdirector-java-edition.html 4. JFreeChat的介紹http://www.blogjava.net/chunkyo/archive/2007/01/13/jfreechat.html 5. 用JFreeChart畫柱狀圖的范例 用ChartDirector在JSP中畫統(tǒng)計圖 http://www.blogjava.net/georgehill/default.html?page=3 6. 一個很棒的WEB圖表項目??ChartDirector http://www.dlog.cn/html/diary/showlog.vm?sid=2&cat_id=-1&log_id=413 7. ChartDirector與JFreeChart http://blog.csdn.net/keelsike/archive/2006/05/30/762869.aspx | |