package com.lhhc.jfreechart.test;
import java.awt.Font;
import java.io.FileOutputStream;
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.CategoryLabelPositions;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.title.LegendTitle;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
public class BarChart3DDemo1 {
/**
* @param args
*/
public static void main(String[] args) throws IOException{
JFreeChart chart=ChartFactory.createBarChart3D(
"图书销量统计图",
"图书",//目录轴的显示标签
"销量",//数值轴的显示标签
getDataSet(),
PlotOrientation.VERTICAL,//设置图表方向
true,//复杂柱状图
false,
false
);
//取得统计图表的第一个图例
LegendTitle legend =chart.getLegend(0);
//修改图例的字体
legend.setItemFont(new Font("宋体",Font.BOLD,14));
//设置标题
chart.setTitle(new TextTitle("图书销量统计图",new Font("黑体",Font.ITALIC,22)));
//设置图表部分
CategoryPlot plot=(CategoryPlot)chart.getPlot();
CategoryAxis categoryAxis=plot.getDomainAxis();//取得横轴
categoryAxis.setLabelFont(new Font("宋体",Font.BOLD,22));//设置横轴显示标签的字体
categoryAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45);//分类标签以45度倾斜
categoryAxis.setTickLabelFont(new Font("宋体",Font.BOLD,18));//分类标签字体
NumberAxis numberAxis=(NumberAxis)plot.getRangeAxis();//取得纵轴
numberAxis.setLabelFont(new Font("宋体",Font.BOLD,42));//设置纵轴显示标签字体
FileOutputStream fos=null;
fos=new FileOutputStream("book2.jpg");
ChartUtilities.writeChartAsJPEG(
fos,
1,
chart,
800,
600,
null
);
fos.close();
}
private static CategoryDataset getDataSet(){
DefaultCategoryDataset dataset=new DefaultCategoryDataset();
dataset.addValue(47000,"北京", "Spring2.0宝典");
dataset.addValue(38000,"北京","轻量级的J@EEE");
dataset.addValue(38000, "北京", "JavaScript权威指南");
dataset.addValue(25000, "北京", "Ajax In Action");
dataset.addValue(37000,"上海", "Spring2.0宝典");
dataset.addValue(37000,"上海","轻量级的J@EEE");
dataset.addValue(24000, "上海", "JavaScript权威指南");
dataset.addValue(26000, "上海", "Ajax In Action");
dataset.addValue(17000,"广州", "Spring2.0宝典");
dataset.addValue(48000,"广州","轻量级的J@EEE");
dataset.addValue(21000, "广州", "JavaScript权威指南");
dataset.addValue(35000, "广州", "Ajax In Action");
dataset.addValue(46000,"长春", "Spring2.0宝典");
dataset.addValue(21000,"长春","轻量级的J@EEE");
dataset.addValue(22000, "长春", "JavaScript权威指南");
dataset.addValue(22000, "长春", "Ajax In Action");
return dataset;
}
}
载自:http://blog.csdn.net/shz2008bj/archive/2008/01/31/2075944.aspx
分享到:
相关推荐
例如,生成柱状图可以使用`ChartFactory.createBarChart()`,饼图则使用`ChartFactory.createPieChart()`。 2. **图表组件与数据源** 在创建图表时,需要提供数据源(Dataset)。Dataset可以是`...
Java 使用 JFreeChart 创建柱形图是一种常见的数据可视化方法,尤其在数据分析和Web应用程序中。JFreeChart 是一个强大的开源库,它提供了多种图表类型,包括柱形图、饼图、线图等,使得开发者能够方便地将数据转化...
2. **图表工厂**:然后,通过`ChartFactory.createBarChart()`方法,传入图表的标题、类别轴标签、值轴标签和`CategoryDataset`,即可生成柱状图。 3. **自定义样式**:JFreeChart提供了丰富的自定义选项,包括颜色...
这篇博文将深入探讨如何使用JFreeChart生成图片并将其在Web应用中显示。 首先,我们需要了解JFreeChart的基本概念。JFreeChart是一个用Java编写的库,它允许开发者创建各种类型的2D图表,包括折线图、柱状图、饼图...
在Java编程领域,JFreeChart是一个非常流行的图表库,它提供了丰富的图表类型,包括柱状图、饼图、线图等,便于开发者创建出专业且美观的数据可视化展示。本篇文章将详细探讨如何自定义JFreeChart的柱状图,使其适应...
以上就是在JavaFX中使用JFreeChart生成图表的基本流程。为了使图表更具交互性,还可以添加事件监听器,如点击图表元素时触发特定操作。此外,JFreeChart提供了丰富的配置选项,可以调整图表的外观,如颜色、线条样式...
将数据集和 plot 组合起来,就可以生成柱状图。 **五、使用步骤** 1. **导入依赖**:在项目中引入 JFreeChart 的库文件,例如 `jfreechart-1.0.1.jar`。 2. **创建数据集**:根据需要的图表类型创建相应的数据集,...
总的来说,这个项目实例提供了一个完整的流程,展示了如何在Java环境下利用JFreeChart生成柱状图,并将其集成到Web应用中。学习这个实例可以帮助开发者理解数据可视化的基本步骤,以及如何在实际项目中应用这些技术...
JFreeChart是一个广泛使用的开源Java库,它允许开发者创建各种图表,如饼图、柱状图、线图等。在Linux服务器上部署JFreeChart应用时,由于系统默认字体与Windows或其他操作系统可能存在差异,可能会导致中文字符无法...
在`效果图.png`中,可能展示了JFreeChart生成的各种图表实例,这些实例可以帮助初学者理解如何配置颜色、标签、图例和数据范围等。 除了基本的图表类型,JFreeChart还提供了许多高级功能,如自定义颜色、图例样式、...
Java JFreeChart库是用于创建高质量图表的开源项目,它为Java开发者提供了丰富的图形类型,如折线图、饼图和柱状图等。在Java后台生成这些图表,可以用于数据可视化,帮助用户更好地理解存储在数据库或其他数据源中...
总结起来,"JFreeChart 生成树状图,饼状图实例"这篇博客旨在教授如何使用JFreeChart库创建树状图和饼状图,这对于需要进行数据可视化的Java开发者来说是非常实用的资源。学习并实践这些示例,不仅可以提高编程技能...
2. **生成柱状图**: 创建柱状图的核心在于调用`ChartFactory.createBarChart3D()`方法,如第21行所示。这个方法接受五个参数:图表标题、X轴标签、Y轴标签、数据集、以及图表的方向。在这里,我们选择垂直方向的...
本实例将探讨如何利用JFreeChart生成时序图,并结合数据库数据来展示动态变化的过程。 **JFreeChart简介** JFreeChart是一个开放源码的Java类库,它提供了一组丰富的API,使得开发者能够轻松地在Java应用中生成高...
在使用JFreeChart生成3D效果报表时,你需要: 1. **导入依赖**:在项目中引入JFreeChart相关的JAR包,这些包包含了所有生成图表所需的功能和组件。 2. **创建数据模型**:定义你需要展示的数据,这可能是一个二维...
对于图表,可以将之前用JFreeChart生成的PNG图片作为`Image`对象添加。 5. **关闭文档**: 最后,记得调用`Document.close()`方法关闭文档,确保所有内容都被写入。 在实际应用中,你可能需要根据用户请求动态生成...
JFreeChart 支持多种图表类型,如柱状图、饼图、线图、散点图、甘特图等,它还提供了丰富的定制选项,以满足各种视觉需求。库的设计使得创建和自定义图表变得简单易行,不论你是初学者还是经验丰富的开发者,都能...
在Java编程环境中,JFreeChart是一个非常流行的开源库,它为开发者提供了丰富的图表绘制功能,包括折线图、饼图、柱状图等。在这个"JFreeChart画折线实例"中,我们将深入探讨如何利用JFreeChart库来创建折线图,并将...
JFreeChart是一个开源项目,提供了一系列接口和类来生成高质量的2D图表,支持多种图表类型,如饼图、柱状图、线图、散点图等。它的API设计灵活,能够方便地集成到Web应用、桌面应用或其他Java项目中。 创建饼形图的...