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....