今天项目中用到了BarChart,其中的中文问题还是花了我比较多的时间的,所以就把这段代码记录下来,方便以后的查阅!感觉这个知识还真的是越用越活的,越
用越熟的,用少了过段时间就忘了,用多了的话很长时间都记得!
private byte[] createChart(List<Object[]> data, String title, String xtitle, String ytitle) {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for (int i=0;i<data.size();i++) {
Object[] objs = data.get(i);
//由上知objs里面只含有两个元素,所以可以直接对它们进行取值;
String name = (String)objs[0];
long sumNumber = (Long)objs[1];
dataset.addValue(sumNumber, name, name);
}
JFreeChart chart = ChartFactory.createBarChart3D(title, xtitle, ytitle, dataset, PlotOrientation.VERTICAL, true, true, false);
//设置标题的字体,不设置中文会乱码
chart.setTitle(new TextTitle(title,new Font("宋体",Font.BOLD,22)));
CategoryPlot plot = (CategoryPlot) chart.getPlot();
Font font = new Font("宋体",Font.BOLD,18);
Font font2 = new Font("宋体", Font.PLAIN,16);
plot.getRangeAxis().setLabelFont(font);//设置纵轴标签的字体,不设置中文会乱码
plot.getDomainAxis().setLabelFont(font);//设置横轴的标题的字体
plot.getDomainAxis().setTickLabelFont(font2);//设置X轴坐标上的字体
chart.getLegend(0).setItemFont(font2);
// File file = Util.getChartFile4Save(prefix);
ByteArrayOutputStream out = new ByteArrayOutputStream();
try {
// ChartUtilities.saveChartAsJPEG(file, chart, 800, 600);
ChartUtilities.writeChartAsJPEG(out, chart, 800, 600);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return out.toByteArray();
}
分享到:
相关推荐
2. **图表类型的创建**:JFreeChart 提供了多种图表类型,如 PieChart、BarChart、XYPlot(用于线图和散点图)。每个图表类型都有对应的构造方法,通过传入数据集和图表配置参数来创建。 3. **图表定制**:...
- **柱状图(BarChart)**:展示了如何创建简单的单列或多列柱状图,以及如何添加堆叠效果、设置透明度等。 - **饼图(PieChart)**:包括了基本饼图、3D饼图和饼图分割效果的实现,同时讲解了如何配置图例和数据...
jfreechart-1.0.19压缩包中有一个jfreechart-1.0.19-demo.jar,里面演示了各种图表的制作案例,包括BarChart、LineChart、PieChart、TimeSeriesChart、XYSeries等等,共309个例子,现开放源码,请各位下载,欢迎交流...
JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。
这个`jfreechart1.0.6-javadocs`压缩包包含了JFreeChart 1.0.6版本的API文档,是开发者深入理解和使用该库的重要参考资料。 **1. API接口和类概述** JFreeChart 的核心类包括 `ChartFactory`、`Chart`、`Plot` 和 `...
- 柱状图(BarChart):比较不同类别的数量或频率。 - 饼图(PieChart):显示各部分占整体的比例。 - 散点图(ScatterPlot):表示两个变量之间的关系。 - 面积图(AreaChart)、雷达图(RadarChart)和甘特图...
- **柱状图(Bar Chart)**:适用于展示分类数据的量,可以是单列或多列,支持3D效果。 - **饼图(Pie Chart)**:用于显示各部分占总体的比例,可自定义切片颜色和标签。 - **线图(Line Chart)**:适合展示...
JFreeChart 支持多种图表类型,如柱状图(Bar Chart)、饼图(Pie Chart)、线图(Line Chart)、散点图(Scatter Plot)、面积图(Area Chart)、甘特图(Gantt Chart)以及更复杂的组合图。这些图表可以用于展示和...
1. 图表类型:JFreeChart支持多种图表类型,如饼图(PieChart)、柱状图(BarChart)、线图(LineChart)、面积图(AreaChart)和散点图(ScatterPlot)等,每种图表都有其特定的应用场景。 2. 组件结构:...
1. **图表类型**:在`SuperDemo`中,我们可以看到JFreeChart支持多种图表的创建,包括饼图(PieChart)、柱状图(BarChart)、线图(LineChart)、面积图(AreaChart)、散点图(ScatterPlot)等。每种图表都有不同...
JFreeChart的设计目标是提供一个简单易用的API,使得开发者能够轻松地在Java应用程序、Applets、Servlets以及JSP中添加图表功能。它支持静态图表和动态图表的生成,能够满足不同场景的需求。该库包含了一系列的图表...
JFreeChart 支持多种类型的图表,包括但不限于条形图(Bar Chart)、饼图(Pie Chart)、线形图(Line Chart)、散点图(Scatter Plot)、面积图(Area Chart)、甘特图(Gantt Chart)以及复杂的3D图表等。...
`jfreechart-1.0.1-US_developer_guide.rar` 文件是一个关于 JFreeChart 的开发者指南,包含了详尽的教程和实例,旨在帮助开发者熟练掌握该库的使用。 首先,我们来看一下 `jfreechart-1.0.1-US_developer_guide....
首先,JFreeChart是Java开发者的一个宝贵工具,它提供了丰富的图表类型,包括柱状图(Bar Chart)、饼状图(Pie Chart)、线形图(Line Chart)、散点图(Scatter Plot)等,适用于各种数据分析和报告需求。...
1. **柱状图(Bar Chart)**:柱状图是用矩形的长度表示数据大小,常用于比较不同类别的数据。在实例中,你可以看到如何创建简单柱状图、堆叠柱状图以及百分比堆叠柱状图。 2. **饼图(Pie Chart)**:饼图通过扇形...
根据提供的文档信息,我们可以归纳出一系列关于 ...以上是根据文档提供的信息整理出的关键知识点,这些内容对于初学者来说是非常有用的指导,可以帮助他们更好地理解和使用 JFreeChart 这款强大的图表生成工具。
柱图(Bar Chart)** 柱图用于比较不同类别的数据。JFreeChart支持水平和垂直柱图,以及堆积和组合柱图。开发者可以自由调整柱子的宽度、间距,添加阴影效果,以及设置不同系列的颜色。柱图还可以包含百分比标签,...
### JFreeChart 1.0.9 安装与使用指南 #### 一、引言 JFreeChart 是一个为 Java 平台设计的免费图表库。它支持多种类型的图表,包括饼图、柱状图、折线图、散点图等,并提供了丰富的功能和定制选项,适用于开发...
- **柱状图(BarChart)**:直观展示分类数据的比较,每个条形的高度代表相应的值。 - **饼状图(PieChart)**:以扇形面积表示数据比例,适合展示各部分对整体的贡献。 - **散点图(ScatterPlot)**:通过点的...
2. **柱状图**(BarChart):以垂直或水平条形长度表示数据大小,适用于比较多个分类的数据。 3. **线图**(LineChart):通过连接一系列数据点描绘趋势,适用于时间序列数据。 4. **散点图**(ScatterPlot):通过...