JFreeChart中文乱码问题。

方法1
//创建主题样式     StandardChartTheme standardChartTheme=new StandardChartTheme("CN");     //设置标题字体     standardChartTheme.setExtraLargeFont(new Font("隶书",Font.BOLD,20));     //设置图例的字体     standardChartTheme.setRegularFont(new Font("宋书",Font.PLAIN,15));     //设置轴向的字体     standardChartTheme.setLargeFont(new Font("宋书",Font.PLAIN,15));     //应用主题样式     ChartFactory.setChartTheme(standardChartTheme);

经测试还是乱码


方法2
1.StandardChartTheme theme = new StandardChartTheme("unicode") {  
2.    public void apply(JFreeChart chart) {  
3.        chart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING,  
4.                RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);  
5.        super.apply(chart);  
6.    }  
7.};  
8.theme.setExtraLargeFont(new Font("宋体", Font.PLAIN, 20));  
9.theme.setLargeFont(new Font("宋体", Font.PLAIN, 14));  
10.theme.setRegularFont(new Font("宋体", Font.PLAIN, 12));  
11.theme.setSmallFont(new Font("宋体", Font.PLAIN, 10));  
12.ChartFactory.setChartTheme(theme);

还是乱码

方法3
1.Font font = new Font("宋体", Font.BOLD, 22);  
2.jfreechart.getTitle().setFont(font); // 标题  
3. 
4.font = new Font("宋体", Font.PLAIN, 14);  
5.jfreechart.getLegend().setItemFont(font); // 列类型的文字字体  
6.          
7.font = new Font("宋体", Font.PLAIN, 16);  
8.categoryaxis.setLabelFont(font); // x轴名称的字体  
9.categoryplot.getRangeAxis().setLabelFont(font); // y轴名称的字体  
10. 
11.CategoryPlot categoryplot = jfreechart.getCategoryPlot();  
12.CategoryAxis categoryaxis = categoryplot.getDomainAxis();  
13. 
14.font = new Font("宋体", Font.PLAIN, 12);  
15.categoryaxis.setTickLabelFont(font); // x轴上的刻度名称字体  
16.categoryplot.getRangeAxis().setTickLabelFont(font); // y轴上的刻度名称字体  
17.          
18.font = new Font("宋体", Font.PLAIN, 18);  
19.categoryplot.setNoDataMessage(emptyMsg);  
20.categoryplot.setNoDataMessageFont(font); // 没有数据时的提示

依旧是乱码


求解决 Jfreechart在linux下乱码问题。 (上传字体文件除外)

你可能感兴趣的:(Java综合)