jfreechart中文亂碼解決方法
CategoryDataset dataset = getDataSet2();
JFreeChart chart = ChartFactory.createBarChart3D("", // 圖表標題
"", // 目錄軸的顯示標簽
"", // 數值軸的顯示標簽
dataset, // 數據集
PlotOrientation.VERTICAL, // 圖表方向:水平、垂直
true, // 是否顯示圖例(對于簡單的柱狀圖必須是false)
false, // 是否生成工具
false // 是否生成URL鏈接
);
//設置字體
configFont(chart);
//字體配置方法(解決中文問題)
private static void configFont(JFreeChart chart) {
// 配置字體
Font xfont = new Font("宋體", Font.PLAIN, 12);// X軸
Font yfont = new Font("宋體", Font.PLAIN, 12);// Y軸
Font kfont = new Font("宋體", Font.PLAIN, 12);// 底部
Font titleFont = new Font("隸書", Font.BOLD, 25); // 圖片標題
CategoryPlot plot = chart.getCategoryPlot();// 圖形的繪制結構對象
// 圖片標題
chart.setTitle(new TextTitle(chart.getTitle().getText(), titleFont));
// 底部
chart.getLegend().setItemFont(kfont);
// X 軸
CategoryAxis domainAxis = plot.getDomainAxis();
domainAxis.setLabelFont(xfont);// 軸標題
domainAxis.setTickLabelFont(xfont);// 軸數值
domainAxis.setTickLabelPaint(Color.BLUE); // 字體顏色
domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); // 橫軸上的label斜顯示
// Y 軸
ValueAxis rangeAxis = plot.getRangeAxis();
rangeAxis.setLabelFont(yfont);
rangeAxis.setLabelPaint(Color.BLUE); // 字體顏色
rangeAxis.setTickLabelFont(yfont);
}</pre>
本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!