public class App {
public static void main(String[] args) throws Exception {
//
String title = "各大公司JEE AS市场占有率统计" ;
DefaultPieDataset ds = new DefaultPieDataset();
ds.setValue("IBM", 2000);
ds.setValue("ORACLE", 3500);
ds.setValue("JBOSS", 1570);
ds.setValue("用友", 4400);
JFreeChart chart = ChartFactory.createPieChart3D(title, ds, true, false, false);
//中文
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 25));//标题字体
chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 18));
//绘图区
PiePlot plot = (PiePlot) chart.getPlot();
plot.setLabelFont(new Font("宋体", Font.PLAIN, 15));
//背景
//chart.setBackgroundImage(ImageIO.read(new File("f:/sunset.jpg")));//图表区背景
//plot.setBackgroundImage(ImageIO.read(new File("f:/water.jpg")));
//设置分裂效果
plot.setExplodePercent("IBM", 0.1f);
plot.setExplodePercent("JBOSS", 0.2f);
//设置前景色透明度
plot.setForegroundAlpha(0.7f);
//设置标签生成器
//{0}:公司名称
//{1}:销量
//{2}:百分比
//{3}:总量
//{4}:
plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}({1}/{3}-{2})"));
ChartUtilities.saveChartAsJPEG(new File("f:\\pie.jpg"), chart, 800, 500);
}
}
public class AppBar {
public static void main(String[] args) throws Exception {
DefaultCategoryDataset ds = new DefaultCategoryDataset();
ds.addValue(2000, "IBM", "一季度");
ds.addValue(2300, "ORACLE", "一季度");
ds.addValue(2800, "JBOSS", "一季度");
ds.addValue(3300, "用友", "一季度");
ds.addValue(4800, "IBM", "二季度");
ds.addValue(4300, "ORACLE", "二季度");
ds.addValue(3200, "JBOSS", "二季度");
ds.addValue(1800, "用友", "二季度");
ds.addValue(1500, "IBM", "三季度");
ds.addValue(2600, "ORACLE", "三季度");
ds.addValue(3900, "JBOSS", "三季度");
ds.addValue(2100, "用友", "三季度");
String title = "前三季度各大公司JEE AS销量统计" ;
JFreeChart chart = ChartFactory.createBarChart3D(title, "季度", "销量(单位:万台)", ds, PlotOrientation.VERTICAL, true, false, false);
//中文
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 25));//大标题
//提示条
chart.getLegend().setItemFont(new Font("宋体", Font.BOLD, 15));
CategoryPlot plot = (CategoryPlot) chart.getPlot();
//域轴字体
plot.getDomainAxis().setLabelFont(new Font("宋体", Font.BOLD, 18));
plot.getDomainAxis().setTickLabelFont(new Font("宋体", Font.PLAIN, 15));//小标签字体
//range
plot.getRangeAxis().setLabelFont(new Font("宋体", Font.BOLD, 15));
plot.setForegroundAlpha(0.6f);
ChartUtilities.saveChartAsJPEG(new File("f:\\bar.jpg"), chart, 800, 500);
}
}
public class AppLine {
public static void main(String[] args) throws Exception {
DefaultCategoryDataset ds = new DefaultCategoryDataset();
ds.addValue(2000, "IBM", "一季度");
ds.addValue(2300, "ORACLE", "一季度");
ds.addValue(2800, "JBOSS", "一季度");
ds.addValue(3300, "用友", "一季度");
ds.addValue(4800, "IBM", "二季度");
ds.addValue(4300, "ORACLE", "二季度");
ds.addValue(3200, "JBOSS", "二季度");
ds.addValue(1800, "用友", "二季度");
ds.addValue(1500, "IBM", "三季度");
ds.addValue(2600, "ORACLE", "三季度");
ds.addValue(3900, "JBOSS", "三季度");
ds.addValue(2100, "用友", "三季度");
String title = "前三季度各大公司JEE AS销量统计" ;
JFreeChart chart = ChartFactory.createLineChart(title, "季度", "销量(单位:万台)", ds, PlotOrientation.VERTICAL, true, false, false);
//中文
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 25));//大标题
//提示条
chart.getLegend().setItemFont(new Font("宋体", Font.BOLD, 15));
CategoryPlot plot = (CategoryPlot) chart.getPlot();
//域轴字体
plot.getDomainAxis().setLabelFont(new Font("宋体", Font.BOLD, 18));
plot.getDomainAxis().setTickLabelFont(new Font("宋体", Font.PLAIN, 15));//小标签字体
//range
plot.getRangeAxis().setLabelFont(new Font("宋体", Font.BOLD, 15));
plot.setForegroundAlpha(0.6f);
ChartUtilities.saveChartAsJPEG(new File("f:\\line.jpg"), chart, 800, 500);
}
}
分享到:
相关推荐
Structs是一个基于MVC模式的Java Web开发框架,它简化了控制器层的编写,使开发者可以更专注于业务逻辑。在Structs中,我们可以定义一个Action,该Action负责生成图表数据,然后通过JFreeChart将这些数据转换为图表...
首先,Java图形报表的核心是Java图形库,如JFreeChart、JasperReports或iText等。这些库提供了丰富的功能,包括创建柱状图、饼状图、折线图等多种类型的图表。例如,JFreeChart是一个强大的开源库,支持多种复杂的...
它允许程序员以矢量图形的形式绘制复杂的形状、线条、曲线和文字,支持颜色处理、变换、混合模式等功能。在本文中,Java2D被用来构建生产调度仿真的可视化界面,能够呈现车间的布局、设备状态以及生产流程。 ...
在本项目中,"Java使用SWT JFreeChart控件实现的小游戏.zip" 提供...综上所述,这个项目提供了实践Java GUI编程、游戏逻辑设计、MVC模式应用以及使用SWT和JFreeChart的机会,对于提升Java开发者的技术能力非常有帮助。
Java图形统计Web开发是将Java技术应用于Web应用中,用于创建动态、交互式的图表和图形。这个项目基于Struts框架,这是一个广泛使用的MVC(模型-视图-控制器)架构,用于构建企业级的Java Web应用程序。JFreeChart库...
Java图形设计卷2主要聚焦在Swing库上,这是一个用于构建桌面应用程序的Java API。Swing是Java Foundation Classes (JFC)的一部分,提供了丰富的组件集合,使得开发者能够创建功能强大且用户友好的图形用户界面(GUI...
在实际使用中,开发人员可以通过JFreeChart提供的API创建图表对象,设置数据源,然后将其渲染到图形上下文,如Swing组件或图片文件。例如,要创建一个简单的饼状图,你可以首先创建一个`PieDataset`对象,添加数据,...
Swing是Java编程语言中用于构建图形用户界面(GUI)的一个强大的工具包,它是Java Foundation Classes(JFC)的一部分。Swing提供了丰富的组件库,允许开发者创建美观且功能丰富的应用程序,尤其是在桌面应用领域。 ...
JFreeChart是一款强大的Java库,专门用于生成高质量的统计图形。这款开源工具广泛应用于各种Java应用程序,包括桌面应用、Web应用以及服务器端应用,能够帮助开发者轻松创建各种复杂的图表,如折线图、柱状图、饼图...
**JFreeChart图形控件详解** JFreeChart是一款强大的开源Java库,用于生成高质量的图表。这个库提供了丰富的图表类型,包括饼状图、柱形图、折线图、区域图、时序图、甘特图和仪表盘,以及组合图,能够满足各种数据...
2. **创建图表**:在Java中使用JFreeChart,首先需要导入库,然后创建ChartFactory对象,通过工厂模式生成所需的图表类型,如ChartFactory.createLineChart()用于创建线图。 3. **设置数据源**:JFreeChart允许通过...
在描述中提到的"JfreeChart 做统计图,你们都懂的",这表明JFreeChart主要用于数据的图形化展示,通过统计图的形式帮助我们快速洞察数据背后的模式和趋势。无论是在商业报告、数据分析还是科学实验中,JFreeChart都...
总的来说,JFreeChart的源代码是一份宝贵的教育资源,它不仅提供了一套完整的图表解决方案,还揭示了Java图形绘制的底层机制。通过学习和研究,开发者不仅可以提升图表设计能力,还能增强对Java图形编程的理解。无论...
《JFreeChart 1.0.9:源码解析与实战指南》 JFreeChart,一个强大的开源Java图表库,是开发复杂数据可视化应用的重要工具。...通过深入源码,结合实例,开发者可以熟练掌握其用法,为Java图形化应用开发打下坚实基础。
JFreeChart库是开源的Java图形库,提供了一套完整的API,支持生成各种复杂图表,如折线图、柱状图、饼图、散点图、甘特图等。它的设计目标是易于使用、可扩展且功能强大,使得开发者无需深入了解图形渲染机制,就能...
- **跨平台兼容性**:由于基于 Java,JFreeChart 可以在任何安装了 Java 虚拟机 (JVM) 的平台上运行,如 Windows、Linux 和 macOS。 - **开源且免费**:JFreeChart 遵循 GNU Lesser General Public License (LGPL) ...
JFreeChart 是一个开源的 Java 图形库,它提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图等,广泛应用于数据分析和可视化。这份"JFreeChart developer guide Source code"是开发者深入理解 JFreeChart ...
SSH2整合jfreechart是Java开发中的一个常见实践,它涉及到三个主要的开源框架:Struts2、Spring2.5和Hibernate3.2,以及一个用于数据可视化的库——JFreeChart。这些技术的整合旨在提供一个高效、灵活且可扩展的企业...
它提供了丰富的功能,使得开发者能够在Java应用程序中轻松地生成高质量的图形。这个“jfreechart-1.0.19-demo.src”压缩包包含了JFreeChart库1.0.19版本的示例源代码,对于理解JFreeChart的使用方法和内部机制非常有...