package com.wkx.jfreechart;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.util.Random;
import javax.swing.JPanel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.chart.title.LegendTitle;
import org.jfree.chart.title.TextTitle;
import org.jfree.chart.urls.StandardPieURLGenerator;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
public class MyPieChartTest extends ApplicationFrame {
//private String[] engStr={"One","Two","Three","Four","Five","Six","Seven","eight","Nine","Ten"};
private String[] cheStr={"第一","第二","第三","第四","第五","第六","第七","第八","第九","第十"};
public MyPieChartTest(String title) {
super(title);
JFreeChart pieChart = createChart(createDataSet());
JPanel localPanel = new ChartPanel(pieChart);
localPanel.setPreferredSize(new Dimension(500,270));
setContentPane(localPanel);
}
public static void main(String[] args) {
MyPieChartTest pieChartTest = new MyPieChartTest("饼形图测试");
pieChartTest.pack();
RefineryUtilities.centerFrameOnScreen(pieChartTest);
pieChartTest.setVisible(true);
}
public PieDataset createDataSet(){
DefaultPieDataset dataset = new DefaultPieDataset();
Random r = new Random();
for(int i=0;i<cheStr.length;i++){
dataset.setValue(cheStr[i], r.nextDouble()*10);
}
return dataset;
}
public JFreeChart createChart(PieDataset dataset){
//创建绘图区
JFreeChart pieChart = ChartFactory.createPieChart("测试饼形图", dataset, true, true, true);
//设置绘图区背景色
pieChart.setBackgroundPaint(Color.PINK);
//获取图片标题
TextTitle title = pieChart.getTitle();
//设置标题样式
title.setFont(new Font("黑体", Font.PLAIN, 20));
//设置鼠标悬浮字
title.setToolTipText("这是我的测试饼形图。");
//获取绘图区
PiePlot plot = (PiePlot)pieChart.getPlot();
//设置没有数据时显示的消息
plot.setNoDataMessage("没有数据。");
//设置没有数据时显示消息的字体
plot.setNoDataMessageFont(new Font("黑体",Font.PLAIN,20));
//设置图片超链接
plot.setURLGenerator(new StandardPieURLGenerator("http://wenkaixuan.iteye.com"));
//设置内容字体
plot.setLabelFont(new Font("宋体",Font.PLAIN,14));
//获取绘图区底部标签
LegendTitle legTitle = pieChart.getLegend();
//设置底部标签字体
legTitle.setItemFont(new Font("黑体",Font.PLAIN,14));
return pieChart;
}
}
分享到:
相关推荐
jfreechart百分比在饼上, 有分离的饼。 private static JFreeChart createChart(PieDataset piedataset) { JFreeChart jfreechart = ChartFactory.createPieChart("Pie Chart Demo 2", piedataset, true, true, ...
JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D图表,包括柱状图、饼形图和折线图。在这个压缩包文件中,包含的是基于JFreeChart库的源码示例,用于帮助理解和应用这些图表类型。下面我们将深入...
在Java编程领域,JFreeChart和Swing是两个非常重要的库,它们分别专注于数据可视化和构建用户界面。本文将深入探讨这两个库的功能、用途以及如何结合使用,以便为你的应用程序增添丰富的图表展示和美观的界面设计。 ...
在Java编程环境中,JFreeChart库是一个非常强大的工具,它允许开发者创建各种类型的图表,包括饼形图和柱形图,这些图表广泛应用于数据分析、报表生成以及可视化展示。本实例将详细探讨如何利用JFreeChart在Java项目...
本文将深入探讨如何利用JFreeChart进行饼形图的绘制,并结合提供的标签“源码”和“工具”,分享一些实际的编程实践。 首先,让我们了解饼形图的基本概念。饼形图是一种用于展示数据比例的图形,每个扇区代表一种...
在Java编程环境中,JFreeChart库是一个强大的工具,用于创建各种复杂的图表,包括柱状图、折线图和雷达图。这些图表对于数据可视化和数据分析非常有用,可以帮助开发者直观地展示大量信息。以下是对给定文件中每个...
* JFreeChart:图表对象,是所有图表的最终表现形式。该对象可以进行一些属性的定制,以满足不同的需求。 * Dataset:数据集对象,用于提供显示图表所用的数据。不同的图表对应着不同的数据集对象类。 * Plot:图表...
JFreeChart是一款强大的Java图形库,它允许开发者创建各种复杂的图表,包括我们这里关注的雷达图(也称为蜘蛛网图)。雷达图是一种多轴图表,常用于比较多个变量在同一尺度上的表现,或者展示数据在多个维度上的分布...
4. **渲染和输出**:最后,你可以将图表渲染为图片(如JPEG或PNG),或者直接显示在Swing组件中,如`JFrame`或`JPanel`。 在`jfreechartDemo`这个示例中,你可能会看到如何创建一个包含多条曲线的图表,并且在每个...
在本篇博客中,"JfreeChart画双Y轴折线图"的主题,将探讨如何使用JFreeChart库来创建具有两个独立Y轴的折线图,这对于显示不同尺度或单位的数据对比非常有用。 首先,我们需要了解JFreeChart的基本结构。JFreeChart...
JFreeChart 是一个开源的 Java 图表库,它提供了丰富的图表类型,如柱状图、饼图、线图、散点图、面积图等,用于生成高质量的静态和动态图表。这个库广泛应用于数据分析、报告生成、Web 应用和桌面应用中。在初学者...
### Java Web应用开发 57 课堂案例-应用JFreeChart组件生成饼形图 #### 概述 在本案例中,我们将通过一系列步骤来学习如何利用JFreeChart组件为Web应用程序生成饼形图。这一过程不仅涉及图表的创建与展示,还包括...
jfreechart绘制的风速风向玫瑰图 jfreechart是Java中一个流行的图表库,它提供了许多种类的图表,包括柱状图、折线图、饼图、雷达图等。本文主要介绍如何使用jfreechart绘制风速风向玫瑰图。 首先,了解jfreechart...
本篇将详细讲解如何使用Java来创建饼形图,主要关注Java的SSM(Spring、SpringMVC、MyBatis)框架中的图表库,如JFreeChart,以及可能涉及的相关知识点。 首先,我们需要了解SSM框架。SSM是Java企业级应用开发的...
这个1.0.13版本是开发者在Java环境中创建饼形图、柱形图和折线图的理想选择。这些图表类型广泛应用于数据可视化,使得复杂的数据更容易理解和分析。 饼形图是一种表现部分与整体关系的数据可视化方式。在JFreeChart...
在这个"JFreeChart画折线实例"中,我们将深入探讨如何利用JFreeChart库来创建折线图,并将其保存为本地文件。下面将详细讲解相关知识点。 首先,JFreeChart库的引入是通过在项目中添加其对应的依赖或jar包。如果你...
利用jfreechart绘制的横向立体柱状图,横坐标是数值,纵坐标是数据分类,需要提前引入jfreechart包文件到工程里,才不会报错
这个资源是我在外网查资料时发现的,https://sourceforge.net/p/jfreechart/patches/241/ 有兴趣的可以去看下,当时正在找关于JFreeChart移动的信息,很凑巧碰到了,很感谢,移动的话需要按住Ctrl键
在本篇中,我们将深入探讨如何利用JFreeChart来制作雷达图(也称为蜘蛛图或星形图),并理解其相关知识点。 1. **JFreeChart简介** JFreeChart是一个开源项目,其目标是提供一个可以免费使用的高质量图表API。它...
**JFreeChart棒形图详解** JFreeChart是一款强大的开源Java图表库,它允许开发者创建各种复杂的图表,包括棒形图、线形图、饼图、散点图等。在IT行业中,数据可视化是至关重要的,它能帮助我们更好地理解和解释数据...