JFreeChart使用 之 IT 分享心得

2021-09-01 05:23:33 字數 3699 閱讀 6721

2023年4月17日,嘿嘿,公司做到報表問題,結合公司,使用了jfreechart,自己花了乙個上午學習,總結一點出來了,希望能對所有在it新接觸人員有所幫助!

首先,去官方**:

public class test

//圓餅形狀

public void display4(categorydataset dataset)

jfreechart chart = chartfactory.createbarchart("課程分布圖","課程", "比例", dataset,   plotorientation.vertical, true, true, true);

categoryplot plot = chart.getcategoryplot();

categoryaxis domainaxis = plot.getdomainaxis();//x軸

valueaxis numberaxis = plot.getrangeaxis(); //y軸

texttitle t = chart.gettitle();

t.setfont(new font("宋體",font.bold,40));//標題文字

domainaxis.setlabelfont(new font("宋體",font.bold,20));//x軸標題文字

domainaxis.setticklabelfont(new font("黑體",font.bold,10));//x軸座標上文字

numberaxis.setlabelfont(new font("宋體",font.bold,20));//y軸標題文字

numberaxis.setticklabelfont(new font("黑體",font.bold,10));//y軸座標上文字

chart.getlegend().setitemfont(new font("黑體",font.bold,12));//圖例文字

chartframe  frame=new chartframe ("cityinfoport公司組織架構圖 ",chart,true);

frame.pack();

frame.setvisible(true);

}//儲存為

public void display3()

,,,};

string rowkeys = ;

string columnkeys = ;

//建立資料來源

categorydataset dataset=datasetutilities.createcategorydataset(rowkeys, columnkeys,data);

//建立折線圖

jfreechart chart = chartfactory.createbarchart3d("全國食物統計","肉類","銷量",dataset,plotorientation.vertical,true,true,false);

//獲取繪圖物件

categoryplot plot = chart.getcategoryplot();

//獲取x  y軸

categoryaxis domainaxis = plot.getdomainaxis();

numberaxis numberaxis = (numberaxis) plot.getrangeaxis();

//解決標題亂碼

chart.gettitle().setfont(new font("宋體",font.bold,16));

//解決x軸亂碼

domainaxis.setlabelfont(new font("宋體",font.plain, 16));

domainaxis.setticklabelfont(new font("sans-serif", font.plain, 11));

//解決y軸亂碼

numberaxis.setlabelfont(new font("宋體",font.plain, 16));

numberaxis.setticklabelfont(new font("sans-serif", font.plain, 11));

//解決底部亂碼問題

chart.getlegend().setitemfont(new font("宋體", font.plain, 16));

//儲存路徑

system.out.println("建立成功!");

}catch(exception ex)

}//第二種顯示方式

public void display2()

,,,};

string rowkeys = ;

string columnkeys = ;

//建立資料來源

categorydataset dataset=datasetutilities.createcategorydataset(rowkeys, columnkeys,data);

//建立折線圖

jfreechart chart = chartfactory.createbarchart3d("全國食物統計","肉類","銷量",dataset,plotorientation.vertical,true,true,false);

//獲取繪圖物件

categoryplot plot = chart.getcategoryplot();

//獲取x  y軸

categoryaxis domainaxis = plot.getdomainaxis();

numberaxis numberaxis = (numberaxis) plot.getrangeaxis();

//解決標題亂碼

chart.gettitle().setfont(new font("宋體",font.bold,16));

//解決x軸亂碼

domainaxis.setlabelfont(new font("宋體",font.plain, 16));

domainaxis.setticklabelfont(new font("sans-serif", font.plain, 11));

//解決y軸亂碼

numberaxis.setlabelfont(new font("宋體",font.plain, 16));

numberaxis.setticklabelfont(new font("sans-serif", font.plain, 11));

//解決底部亂碼問題

chart.getlegend().setitemfont(new font("宋體", font.plain, 16));

chartframe  frame=new chartframe ("cityinfoport公司組織架構圖 ",chart,true);

frame.pack();

frame.setvisible(true);

}//最簡單的一種現實方式,傳入的是乙個map

public void display()

下面是效果圖

基於web的jfreechart的使用

這個模組的主要步驟就是 前台通過struts呼叫後台,通過jfreechart產生格式的圖表,儲存在某個位置,然後前台jsp再去呼叫。來開工。jfreechart的簡介大家請。首先需要兩個包,jcommon 1.0.16.jar和jfreechart 1.0.13.jar。jfreechart 下面...

jfreechart 亂碼問題

如果使用jfreechart預設的宣告方式建立出來的圖表上中文標題是方框或亂碼,這個不用說肯定和字型有關 接下來來看一下解決辦法 開啟doc檔案裡的texttitle類你會發現 the default font.public static final font default font new fo...

JFreeChart教程 入門

更多技術文章,請檢視我的blog http www.swjsj.com article 1990 同時可以獲得簡明介紹 我們以當前最新版本 jfreechart 0.9.21.zip為例子進行說明。import org.jfree.chart.jfreechart import org.jfree....