出现这个问题有两种情况;
第一种:jfreechart需要显示中文时需要设置相应的字体
//创建主题样式
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);
第二种:需要安装中文字体,将字体安装到java虚拟机的字库中;在我的环境下使用了宋体。
1、下载
simsun.ttc字体文件
下载地址:
点击打开链接
2、 通过echo $JAVA_HOME 命令查看JDK安装目录 。
3、进入字库目录
%JAVA_HOME%/jre/lib/fonts --
%JAVA_HOME%就是步骤1找到的目录
4、查看字库目录下是否存在
fallback目录,如果不存在则手动创建一个
fallback目录。
5、将中文字体文件上传到fallback目录。
6、重启web容器。
本文介绍了在Linux环境中,使用jfreechart生成图形时遇到中文乱码的两种解决方案。一种是通过创建自定义主题设置中文字体,如设置宋书字体。另一种方法是安装中文字体,如宋体,并将其添加到Java虚拟机的字体库中,具体步骤包括下载字体文件、找到JDK安装目录、将字体放入指定字体目录并重启web容器。
293

被折叠的 条评论
为什么被折叠?



