JFreeChart生成图片乱码解决方法(转载)

柱状图(CategoryPlot):

Font font = new Font("宋体", Font.PLAIN, 16);
// 设置标题的字体
chart.getTitle().setFont(font);
// 获取图表区域对象
CategoryPlot plot = chart.getCategoryPlot();

CategoryAxis domainAxis = plot.getDomainAxis();
// 水平底部标题
domainAxis.setLabelFont(font);
// 水平底部列表
domainAxis.setTickLabelFont(font);

ValueAxis rangeAxis = plot.getRangeAxis();
// 垂直标题
rangeAxis.setLabelFont(font);
// 设置图例字体
chart.getLegend().setItemFont(font);

 

饼图(PiePlot):

Font font = new Font("宋体", Font.PLAIN, 16);
// 设置标题字体
chart.getTitle().setFont(font);
// 获取图表区域对象
PiePlot piePlot = (PiePlot) chart.getPlot();

piePlot.setLabelFont(font);

chart.getLegend().setItemFont(font);

 

时序图(TimeSeries):

Font font = new Font("宋体", Font.PLAIN, 16);
// 获取图表区域对象
XYPlotplot = (XYPlot) chart.getPlot();
// Y轴字体
plot.getRangeAxis().setLabelFont(font);
// X轴框里的标题字体
chart.getLegend().setItemFont(font);
// X轴列表字体
plot.getDomainAxis().setTickLabelFont(font);
// X轴小标题字体
plot.getDomainAxis().setLabelFont(font);

 

折线图:

Font font = new Font("宋体", Font.PLAIN, 16);

XYPlot plot = (XYPlot) chart.getPlot();
// 设置标题字体
chart.getTitle().setFont(font);

CategoryAxis domainAxis = plot.getDomainAxis();
// 设置X轴坐标上的文字
domainAxis.setTickLabelFont(font);
// 设置X轴的标题文字
domainAxis.setLabelFont(font);

NumberAxis numberaxis = (NumberAxis) plot.getRangeAxis();
// 设置Y轴坐标上的文字
numberAxis.setTickLabelFont(font);
// 设置Y轴的标题文字
numberAxis.setLabelFont(font)
// 解决底部汉字乱码的问题
chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 15));
// 设置消除字体的锯齿渲染(解决中文问题)
chart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值