成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

公司報(bào)表java代碼,java開源報(bào)表

java怎么做報(bào)表功能?

使用 JFreeChart 生成各種樣式的圖表

利川網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)自2013年起到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。

限于篇幅的問(wèn)題我們?cè)谶@里只實(shí)現(xiàn)兩種常用的圖表,其他類型圖表讀者可以觸類旁通。我們先給出柱狀圖的實(shí)現(xiàn),餅圖的實(shí)現(xiàn)再來(lái)跟柱狀圖進(jìn)行比較。

1 柱狀圖

package lius.chart.demo;

import java.io.*;

import org.jfree.data.*;

import org.jfree.chart.*;

import org.jfree.chart.plot.*;

/**

* 該類用于演示最簡(jiǎn)單的柱狀圖生成

* @author Winter Lau

*/

public class BarChartDemo {

public static void main(String[] args) throws IOException{

CategoryDataset dataset = getDataSet2();

JFreeChart chart = ChartFactory.createBarChart3D(

"水果產(chǎn)量圖", // 圖表標(biāo)題

"水果", // 目錄軸的顯示標(biāo)簽

"產(chǎn)量", // 數(shù)值軸的顯示標(biāo)簽

dataset, // 數(shù)據(jù)集

PlotOrientation.VERTICAL, // 圖表方向:水平、垂直

true, // 是否顯示圖例(對(duì)于簡(jiǎn)單的柱狀圖必須是 false)

false, // 是否生成工具

false // 是否生成 URL 鏈接

);

FileOutputStream fos_jpg = null;

try {

fos_jpg = new FileOutputStream("D:\\fruit.jpg");

ChartUtilities.writeChartAsJPEG(fos_jpg,100,chart,400,300,null);

} finally {

try {

fos_jpg.close();

} catch (Exception e) {}

}

}

/**

* 獲取一個(gè)演示用的簡(jiǎn)單數(shù)據(jù)集對(duì)象

* @return

*/

private static CategoryDataset getDataSet() {

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

dataset.addValue(100, null, "蘋果");

dataset.addValue(200, null, "梨子");

dataset.addValue(300, null, "葡萄");

dataset.addValue(400, null, "香蕉");

dataset.addValue(500, null, "荔枝");

return dataset;

}

/**

* 獲取一個(gè)演示用的組合數(shù)據(jù)集對(duì)象

* @return

*/

private static CategoryDataset getDataSet2() {

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

dataset.addValue(100, "北京", "蘋果");

dataset.addValue(100, "上海", "蘋果");

dataset.addValue(100, "廣州", "蘋果");

dataset.addValue(200, "北京", "梨子");

dataset.addValue(200, "上海", "梨子");

dataset.addValue(200, "廣州", "梨子");

dataset.addValue(300, "北京", "葡萄");

dataset.addValue(300, "上海", "葡萄");

dataset.addValue(300, "廣州", "葡萄");

dataset.addValue(400, "北京", "香蕉");

dataset.addValue(400, "上海", "香蕉");

dataset.addValue(400, "廣州", "香蕉");

dataset.addValue(500, "北京", "荔枝");

dataset.addValue(500, "上海", "荔枝");

dataset.addValue(500, "廣州", "荔枝");

return dataset;

}

}

2 餅圖

package lius.chart.demo;

import java.io.*;

import org.jfree.data.*;

import org.jfree.chart.*;

/**

* 用于演示餅圖的生成

* @author Winter Lau

*/

public class PieChartDemo {

public static void main(String[] args) throws IOException{

DefaultPieDataset data = getDataSet();

JFreeChart chart = ChartFactory.createPie3DChart("水果產(chǎn)量圖", // 圖表標(biāo)題

data,

true, // 是否顯示圖例

false,

false

);

// 寫圖表對(duì)象到文件,參照柱狀圖生成源碼

}

/**

* 獲取一個(gè)演示用的簡(jiǎn)單數(shù)據(jù)集對(duì)象

* @return

*/

private static DefaultPieDataset getDataSet() {

DefaultPieDataset dataset = new DefaultPieDataset();

dataset.setValue("蘋果",100);

dataset.setValue("梨子",200);

dataset.setValue("葡萄",300);

dataset.setValue("香蕉",400);

dataset.setValue("荔枝",500);

return dataset;

}

}

3將生成的圖表移到瀏覽器上

package lius.chart.demo;

import java.io.IOException;

import javax.servlet.*;

import javax.servlet.http.HttpServlet;

import org.jfree.data.*;

import org.jfree.chart.*;

/**

* 演示通過(guò) servlet 直接輸出圖表

* @author Winter Lau

*/

public class ChartDemoServlet extends HttpServlet {

public void service(ServletRequest req, ServletResponse res)

throws ServletException, IOException

{

res.setContentType("image/jpeg");

DefaultPieDataset data = getDataSet();

JFreeChart chart = ChartFactory.createPie3DChart("水果產(chǎn)量圖",

data,

true,

false,

false

);

ChartUtilities.writeChartAsJPEG(res.getOutputStream(),

100,chart,400,300,null);

}

/**

* 獲取一個(gè)演示用的簡(jiǎn)單數(shù)據(jù)集對(duì)象

* @return

*/

private static DefaultPieDataset getDataSet() {

DefaultPieDataset dataset = new DefaultPieDataset();

dataset.setValue("蘋果",100);

dataset.setValue("梨子",200);

dataset.setValue("葡萄",300);

dataset.setValue("香蕉",400);

dataset.setValue("荔枝",500);

return dataset;

}

}

4高級(jí)主題

很多情況我們不僅僅要求可以在瀏覽器上顯示一個(gè)圖表,我們更需要客戶可以直接在圖表上做一下交互的操作,例如獲取信息提示,點(diǎn)擊圖表某個(gè)部分進(jìn)行更詳細(xì)信息的展示等等。例如前面生成的簡(jiǎn)單柱狀圖,用戶需要在看到柱狀圖后點(diǎn)擊某種水果例如是蘋果即可看到各個(gè)地區(qū)蘋果產(chǎn)量的情況。為此就要求該圖形具有交互操作的功能。在 HTML 中為了讓一個(gè)圖像具有可交互的功能就必須給該圖像定義一個(gè) Map 對(duì)象。下表節(jié)選一段具有該功能的 HTML 代碼:

MAP NAME="chartMap"

AREA SHAPE="RECT" COORDS="81,15,126,254" href="?series=0category=100"

title="100 = 7,048"

onclick="javascript:clickChart('100');return false;"

AREA SHAPE="RECT" COORDS="143,27,188,255" href="?series=0category=200"

title="200 = 6,721"

onclick="javascript: clickChart ('200');return false;"

AREA SHAPE="RECT" COORDS="205,54,250,255" href="?series=0category=300"

title="300 = 5,929"

onclick="javascript: clickChart ('300');return false;"

AREA SHAPE="RECT" COORDS="267,85,312,255" href="?series=0category=400"

title="400 = 5,005"

onclick="javascript: clickChart ('400');return false;"

AREA SHAPE="RECT" COORDS="329,17,374,255" href="?series=0category=Diet"

title="Diet = 7,017" onclick="javascript:

clickChart ('Diet');return false;"

/MAP

由此就產(chǎn)生了一個(gè)問(wèn)題:如果根據(jù)一個(gè)圖像來(lái)生成對(duì)應(yīng)的 MAP 對(duì)象。我們回頭看看剛才的代碼,在創(chuàng)建一個(gè)圖表對(duì)象時(shí)候有兩個(gè)參數(shù),我們舉柱狀圖的例子來(lái)講這兩個(gè)參數(shù)就是 ChartFactory. createBarChart3D 方法中的最后兩個(gè)參數(shù),這兩個(gè)參數(shù)的類型都是布爾值。這兩個(gè)參數(shù)意思分別是:是否創(chuàng)建工具提示 (tooltip) 以及是否生成 URL。這兩個(gè)參數(shù)分別對(duì)應(yīng)著 MAP 中一個(gè) AREA 的 title 屬性以及 href 屬性。

可是我想知道的是怎么來(lái)產(chǎn)生這個(gè) MAP ??!哈哈,不要著急,JFreeChart 已經(jīng)幫我們做好生成 MAP 對(duì)象的功能。為了生成 MAP 對(duì)象就要引入另外一個(gè)對(duì)象:ChartRenderingInfo。因?yàn)?JFreeChart 沒(méi)有直接的方法利用一個(gè)圖表對(duì)象直接生成 MAP 數(shù)據(jù),它需要一個(gè)中間對(duì)象來(lái)過(guò)渡,這個(gè)對(duì)象就是 ChartRenderingInfo。

怎么用JAVA來(lái)制作EXCEL報(bào)表?源代碼應(yīng)該怎么寫?有專門的表格軟件或報(bào)表

可以用FineReport報(bào)表軟件實(shí)現(xiàn)。finereport是純java軟件,類excel設(shè)計(jì)模式,是一款功能極其牛掰的表格工具,可與數(shù)據(jù)庫(kù)直接對(duì)接(一般的數(shù)據(jù)庫(kù),Oracle,SqlServer,MySql,DB2,Sybase,Informix等都支持),文本數(shù)據(jù)直接導(dǎo)入當(dāng)然也支持,企業(yè)級(jí)額應(yīng)用中包括設(shè)置定時(shí)報(bào)表、自定匯總數(shù)據(jù)發(fā)送郵件、報(bào)表權(quán)限分配、決策平臺(tái)搭建等,因?yàn)槭菍I(yè)的報(bào)表軟件,功能很強(qiáng)大,其實(shí)很多業(yè)內(nèi)人士都在用這款軟件,另外幾乎不用自己編寫代碼,所以新手很容易上手使用。應(yīng)該會(huì)比較適合您的,滿意的話可以采納的哦,謝謝了

怎么用java做一份報(bào)表

把數(shù)據(jù)庫(kù)中需要的數(shù)據(jù)處理后做成可視化圖表,根據(jù)不同需求可以做成不同形式的圖表,節(jié)省時(shí)間,效果比較好,java報(bào)表軟件推薦:國(guó)外的話水晶報(bào)表,SAP公司的商業(yè)報(bào)表工具,作為SAP“集團(tuán)”下的報(bào)表組件模塊。10年事前盛行一時(shí),后被SAP收購(gòu)。但水晶報(bào)表(Crystal Report)在理論上只支持單數(shù)據(jù)集,對(duì)多集的支持依賴于數(shù)據(jù)庫(kù)的運(yùn)算能力(叉乘與聯(lián)合等或?qū)懘鎯?chǔ)過(guò)程),多庫(kù)一般難以支持。

國(guó)內(nèi)的話FineReport,目前國(guó)內(nèi)報(bào)表軟件領(lǐng)域發(fā)展最成熟也是市場(chǎng)份額最高的。IDC的報(bào)告里,17年甚至超過(guò)SAP,IBM,在這個(gè)細(xì)分領(lǐng)域,也是Gartner的BI選型市場(chǎng)指南里唯 一推薦的報(bào)表工具。零代碼開發(fā),類似excel的設(shè)計(jì)方式,上手簡(jiǎn)單。

新聞名稱:公司報(bào)表java代碼,java開源報(bào)表
新聞來(lái)源:http://jinyejixie.com/article18/dsecidp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、面包屑導(dǎo)航ChatGPT、微信小程序、營(yíng)銷型網(wǎng)站建設(shè)、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
四平市| 浮梁县| 双城市| 获嘉县| 山东| 临洮县| 花莲市| 乌鲁木齐市| 德兴市| 临安市| 澳门| 鄂伦春自治旗| 高州市| 公安县| 霍城县| 株洲县| 离岛区| 东海县| 防城港市| 通化县| 天长市| 大关县| 常山县| 利津县| 永善县| 民丰县| 滕州市| 武义县| 灵丘县| 尚志市| 河曲县| 南皮县| 塘沽区| 霍州市| 普宁市| 宝丰县| 大同县| 屏东县| 广东省| 桐庐县| 黄陵县|