柱状图:
import java.awt.Font;
import java.io.File;
import java.io.IOException;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
public class BarChartDemo {
public static void main(String[] args) throws IOException {
CategoryDataset dataset = getDataset();
JFreeChart chart = ChartFactory.createBarChart3D("圆柱",//标题
"应报与实报对照", //x轴显示
"人数", //y轴显示
dataset, //数据源
PlotOrientation.VERTICAL,//图表方向:水平、垂直
true, // 是否显示图例(对于简单的柱状图必须是false)
false, // 是否生成工具
false);// 是否生成URL链接
CategoryPlot plot = chart.getCategoryPlot();
CategoryAxis axis = plot.getDomainAxis();//获取x轴
ValueAxis numberAxis = plot.getRangeAxis();//获取y轴
axis.setLowerMargin(0.1);//设置距离图片左端距离此时为10%
axis.setUpperMargin(0.1);//设置距离图片右端距离此时为百分之10
axis.setCategoryLabelPositionOffset(10);//图表横轴与标签的距离(10像素)
axis.setCategoryMargin(0.2);//横轴标签之间的距离20%
chart.getLegend().setItemFont(new Font("黑体",Font.BOLD,12));//设置底部中文乱码
axis.setTickLabelFont(new Font("黑体",Font.BOLD,12));//设置X轴坐标上的文字
axis.setLabelFont(new Font("黑体",Font.BOLD,12));//设置X轴的标题文字
numberAxis.setTickLabelFont(new Font("黑体",Font.BOLD,12));//设置X轴坐标上的文字
numberAxis.setLabelFont(new Font("黑体",Font.BOLD,12));//设置X轴的标题文字
chart.getTitle().setFont(new Font("黑体",Font.BOLD,18));//设置标题文字
File file = new File("d:/BarChartDemo.png");
ChartUtilities.saveChartAsPNG(file, chart, 400, 300);
}
public static CategoryDataset getDataset(){
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(100, "计划", "清华大学");
dataset.addValue(150, "实报", "清华大学");
dataset.addValue(200, "计划", "天津大学");
dataset.addValue(300, "实报", "天津大学");
dataset.addValue(130, "计划", "郑州大学");
dataset.addValue(180, "实报", "郑州大学");
return dataset;
}
}
饼状图:
二、饼状图
import java.awt.Font;
import java.io.File;
import java.io.IOException;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.data.general.DefaultPieDataset;
public class PieChartDemo {
public static void main(String[] args) throws IOException {
DefaultPieDataset dataset = getdDataset();
JFreeChart chart = ChartFactory.createPieChart3D("饼状图",
dataset,
true,
false,
false);
chart.getTitle().setFont(new Font("黑体",Font.BOLD,20));//设置标题字体
PiePlot piePlot= (PiePlot) chart.getPlot();//获取图表区域对象
piePlot.setLabelFont(new Font("黑体",Font.BOLD,12));//饼图旁边的中文
chart.getLegend().setItemFont(new Font("黑体",Font.BOLD,12));//底部中文
File file = new File("d:/PieChartDemo.png");
ChartUtilities.saveChartAsPNG(file, chart, 400, 300);
}
public static DefaultPieDataset getdDataset(){
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("JAVA开放工程师", 500);
dataset.setValue(".NET开放工程师", 300);
dataset.setValue("PHP开放工程师", 100);
dataset.setValue("PB开放工程师", 50);
dataset.setValue("C开放工程师", 250);
dataset.setValue("C++开放工程师", 400);
return dataset;
}
}
分享到:
相关推荐
标题“JFreechart在Linux下不显示及中文乱码问题”指出的是在使用JFreechart库创建图表时,在Linux操作系统环境下遇到的两个主要问题:图表无法正常显示以及中文字符出现乱码。JFreechart是一个Java库,用于生成高...
在标题和描述中提到的问题,主要聚焦于两个关键点:中文乱码和数值显示。本文将详细解析这些问题以及如何解决。 首先,我们来谈谈中文乱码问题。在JFreeChart的早期版本中,由于默认的字体集可能不支持中文字符,...
标题 "jfreechart部署在Linux服务器上生成图片乱码的解决方案" 涉及到的主要知识点是关于Java图形库JFreeChart在Linux环境中的使用,特别是解决中文字符乱码的问题。JFreeChart是一个广泛使用的开源Java库,它允许...
在使用JFreeChart库生成图表时,可能会遇到中文乱码的问题,这主要是因为JFreeChart默认的字体不支持中文显示。解决这个问题的关键在于为图表的各个部分(如标题、轴标签、图例等)设置合适的中文支持字体。下面将...
在Linux环境下使用JFreeChart库绘制图表时,可能会遇到中文乱码的问题。JFreeChart是一个强大的Java库,它提供了一套完整的解决方案来创建各种图表,如饼图、柱状图、线图等。然而,由于编码问题,当图表中包含中文...
通过以上步骤,你应该能够成功解决JFreeChart在Linux服务器上生成图片时的中文乱码问题。值得注意的是,这种方法不仅适用于JFreeChart,还适用于其他依赖于Java运行环境显示中文字符的程序。在实际操作中,应根据...
这个特定的版本,被称为“JFreeChart无中文乱码版本”,特别优化了解决在处理中文字符时可能出现的乱码问题,使得在中文环境下使用JFreeChart变得更加友好。 JFreeChart支持多种类型的图表,包括但不限于柱状图、...
在Linux环境下,使用Java的...总的来说,解决JFreeChart在Linux下的中文乱码问题需要结合系统环境、JFreeChart的API使用以及适当的编码设置。通过正确地配置和使用支持中文的字体,可以确保生成的图表文本清晰易读。
针对上述问题,可以通过以下几种方法来解决jFreeChart中的中文乱码问题: ##### 1. 设置支持中文的字体 最直接的方法是为jFreeChart中的各个元素(如轴标签、图例等)指定一个支持中文的字体。例如,在示例代码中...
### JFreeChart中文乱码问题解决 在使用Java进行数据可视化的过程中,经常需要用到JFreeChart这一强大的图表绘制库。然而,在处理中文字符时,开发者往往会遇到一个常见的问题——中文乱码。本文将深入探讨如何解决...
标题中的“jfreechart在LINUX下乱码问题的解决”指的是在Linux操作系统中使用JFreeChart库时遇到的字符编码问题。JFreeChart是一个Java库,用于创建各种图表,如饼图、柱状图、线图等。在处理中文字符时,如果系统...
1、JFreeChart生成图片路径教程 2、JFreeChart使用教程(含下载安装,超详细) 3、JFreeChart使用详细教程 4、JFreeChart学习--jsp柱状图教程 5、JFreeChart乱码解决方法 等等 包括许多优秀案例
这是一款专为Linux设计的中文字体,包含了大量汉字,可以有效地解决JFreeChart在Linux环境下的中文乱码问题。将“zysong.ttf”字体文件添加到系统中,可以让JFreeChart在绘制图表时能够正确渲染中文字符。 在Java...
1、JFreeChart生成图片路径教程 2、JFreeChart使用教程(含下载安装,超详细) 3、JFreeChart使用详细教程 4、JFreeChart学习--jsp柱状图教程 5、JFreeChart乱码解决方法 等等 包括csdn上得优秀案例 ------20+M的...
通过以上分析,我们可以看到,理解和使用JFreeChart源码不仅可以解决在Linux环境下中文乱码的问题,还能帮助我们更好地控制和定制图表的显示效果。对于需要在Java项目中展示数据或者创建复杂图表的开发者来说,深入...
在使用JFreeChart库生成报表时,可能会遇到中文字符出现乱码的问题,这通常是由于字体设置不正确导致的。JFreeChart是一个强大的Java库,用于创建各种类型的图表,包括柱状图、饼图、时序图和折线图等。在处理中文...
在使用Java的JFreeChart库绘制包含中文字符的图表时,常常会遇到中文乱码的问题。JFreeChart是一个强大的开源库,用于创建各种类型的图表,包括柱状图、饼图、线图等。然而,由于编码处理不当,中文字符可能无法正确...
在Linux环境下,使用JFreeChart库进行图表生成时,可能会遇到中文乱码的问题。这是因为JFreeChart默认使用的是西方字符集,不支持中文显示。本文将深入探讨如何解决这一问题,确保在Linux系统中,JFreeChart能正确地...
解决JFreeChart中文乱码的方法主要集中在字体的配置和编码的处理两个方面。 #### 字体配置 字体配置是解决中文乱码最基本也是最有效的方法之一。 1. **使用系统字体** - 在Java环境中指定使用系统中已安装的支持...
JFreeChart乱码解决方法 - 企业应用 - Java