由于工作需要,近段时间需要我学习jfreeChart,作为新人的我,能有任务布置给我,当然是件很高兴的事情啦!!!
废话不多说,直接开始总结。。。。。。
对于jFreeChart,最主要的几个核心函数
- JFreeChart :图表对象,任何类型的图表的最终形式都是在该对象进行一些属性的定制。JFreeChart引擎本身就提供了一个工厂类(ChartFactory)用来创建不同类型的图表对象
JFreeChart chart = ChartFactory.createPieChart( "Pie Chart Demo 1", // chart title dataset, // data true, // include legend true, //include tooltips false //url? );
- XXXDataSet:数据集对象,用于提供显示图表所用的数据,根据不同类型的图表对应着很多类型的数据集对象类。
private static PieDataset createDataset() { //创建饼图的数据集 DefaultPieDataset dataset = new DefaultPieDataset();、 //添加数据 dataset.setValue("One", new Double(43.2)); dataset.setValue("Two", new Double(10.0)); dataset.setValue("Three", new Double(27.5)); dataset.setValue("Four", new Double(17.5)); dataset.setValue("Five", new Double(11.0)); dataset.setValue("Six", new Double(19.4)); return dataset; }
- XXXPlot:图表区域对象,基本上是这个对象决定着什么样式的图表,创建该对象的时候需要 Axis,renderer以及数据集对象的支持。
PiePlot plot = (PiePlot) chart.getPlot();plot.setLabelFont(new Font("SansSerif", Font.PLAIN, 12));plot.setNoDataMessage("No data available");plot.setCircular(false);plot.setLabelGap(0.02);
- XXXAxis:用于处理表的两个轴:纵轴,横轴
//操作横坐标DateAxis axis = (DateAxis) plot.getDomainAxis();axis.setDateFormatOverride(new SimpleDateFormat("MMM-yyyy"));//操作纵坐标ValueAxis valueAxis = (ValueAxis)plot.getRangeAxis();
- XXXRender:负责如何显示一个图表对象。
XYItemRenderer r = plot.getRenderer(); if (r instanceof XYLineAndShapeRenderer) { XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) r; renderer.setBaseShapesVisible(true); renderer.setBaseShapesFilled(true); renderer.setUseFillPaint(true); renderer.setFillPaint(Color.white); }
- XXXURLGenerator:用于生产web图表中每一项的鼠标点击连接。
- XXXToolTipGenerator:用于生成图像的帮助提示,不同类型图表对应着不同类型的提示类。