Jfreechart小案例

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.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
//-------------------------------饼图-------------------------------
//饼图的dataset 一般是用PieDataset 接口,具体实现类是 DefaultPieDataset
public class MyJFC extends ApplicationFrame{
//1、创建一个数据源(dataset):
public PieDataset createDataset(){
//注意是DefaultPieDataset!!生成饼图数据集对象
DefaultPieDataset defaultpiedataset = new DefaultPieDataset();
defaultpiedataset.setValue("One", 10);
defaultpiedataset.setValue("Two", 20);
defaultpiedataset.setValue("Three",30);
defaultpiedataset.setValue("Four", 40);
return defaultpiedataset;
}
//2、由ChartFactory 产生 JFreeChart 对象
public JFreeChart createChart(PieDataset piedataset)
{
JFreeChart jfreechart = ChartFactory.createPieChart(
   "Pie Chart Demo 1", //图形标题名称
   piedataset, // dataset
   true, // legend?
   true, // tooltips?
   false); //URLs?
//通过JFreeChart 对象获得 plot:PiePlot!!
PiePlot pieplot = (PiePlot)jfreechart.getPlot();
// 没有数据的时候显示的内容
pieplot.setNoDataMessage("No data available");
//一些重要的方法:第三份挖出来10%
pieplot.setExplodePercent(3,0.1);
return jfreechart;
}

// 生成显示图表的面板
public JPanel createDemoPanel() {
  //调用JFreeChart 加载数据createDataset 创建图表
  JFreeChart jfreechart = createChart(createDataset());
  //建个图表面板 加载jfreechart
  return new ChartPanel(jfreechart);
}
public MyJFC(String s) {
  super(s);
  //设置内容面板,加载上面的内容面板
  setContentPane(createDemoPanel());
}

public static void main(String[] args) {
  MyJFC fjc = new MyJFC("CityInfoPort公司组织架构图");
  fjc.pack();
  //显示到屏幕
  RefineryUtilities.centerFrameOnScreen(fjc);
  fjc.setVisible(true);
}
 
}

你可能感兴趣的:(jfreechart)