java开发中使用Jfreechart进行画图的源码

源代码在线查看: multiplepieplottests.java

软件大小: 5312 K
上传用户: ying_min
关键词: Jfreechart java 画图 源码
下载地址: 免注册下载 普通下载 VIP

相关代码

				/* ===========================================================				 * JFreeChart : a free chart library for the Java(tm) platform				 * ===========================================================				 *				 * (C) Copyright 2000-2008, by Object Refinery Limited and Contributors.				 *				 * Project Info:  http://www.jfree.org/jfreechart/index.html				 *				 * This library is free software; you can redistribute it and/or modify it				 * under the terms of the GNU Lesser General Public License as published by				 * the Free Software Foundation; either version 2.1 of the License, or				 * (at your option) any later version.				 *				 * This library is distributed in the hope that it will be useful, but				 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY				 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public				 * License for more details.				 *				 * You should have received a copy of the GNU Lesser General Public				 * License along with this library; if not, write to the Free Software				 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,				 * USA.				 *				 * [Java is a trademark or registered trademark of Sun Microsystems, Inc.				 * in the United States and other countries.]				 *				 * -------------------------				 * MultiplePiePlotTests.java				 * -------------------------				 * (C) Copyright 2005-2008, by Object Refinery Limited and Contributors.				 *				 * Original Author:  David Gilbert (for Object Refinery Limited);				 * Contributor(s):   -;				 *				 * Changes				 * -------				 * 16-Jun-2005 : Version 1 (DG);				 * 06-Apr-2006 : Added tests for new fields (DG);				 * 18-Apr-2008 : Added testConstructor() (DG);				 *				 */								package org.jfree.chart.plot.junit;								import java.awt.Color;				import java.awt.GradientPaint;				import java.io.ByteArrayInputStream;				import java.io.ByteArrayOutputStream;				import java.io.ObjectInput;				import java.io.ObjectInputStream;				import java.io.ObjectOutput;				import java.io.ObjectOutputStream;								import junit.framework.Test;				import junit.framework.TestCase;				import junit.framework.TestSuite;								import org.jfree.chart.ChartFactory;				import org.jfree.chart.event.PlotChangeEvent;				import org.jfree.chart.event.PlotChangeListener;				import org.jfree.chart.plot.MultiplePiePlot;				import org.jfree.data.category.DefaultCategoryDataset;				import org.jfree.util.TableOrder;								/**				 * Some tests for the {@link MultiplePiePlot} class.				 */				public class MultiplePiePlotTests extends TestCase				        implements PlotChangeListener {								    /** The last event received. */				    PlotChangeEvent lastEvent;								    /**				     * Returns the tests as a test suite.				     *				     * @return The test suite.				     */				    public static Test suite() {				        return new TestSuite(MultiplePiePlotTests.class);				    }								    /**				     * Receives a plot change event and records it.  Some tests will use this				     * to check that events have been generated (or not) when required.				     *				     * @param event  the event.				     */				    public void plotChanged(PlotChangeEvent event) {				        this.lastEvent = event;				    }								    /**				     * Constructs a new set of tests.				     *				     * @param name  the name of the tests.				     */				    public MultiplePiePlotTests(String name) {				        super(name);				    }								    /**				     * Some checks for the constructors.				     */				    public void testConstructor() {				        MultiplePiePlot plot = new MultiplePiePlot();				        assertNull(plot.getDataset());								        // the following checks that the plot registers itself as a listener				        // with the dataset passed to the constructor - see patch 1943021				        DefaultCategoryDataset dataset = new DefaultCategoryDataset();				        plot = new MultiplePiePlot(dataset);				        assertTrue(dataset.hasListener(plot));				    }								    /**				     * Check that the equals() method distinguishes the required fields.				     */				    public void testEquals() {				        MultiplePiePlot p1 = new MultiplePiePlot();				        MultiplePiePlot p2 = new MultiplePiePlot();				        assertTrue(p1.equals(p2));				        assertTrue(p2.equals(p1));								        p1.setDataExtractOrder(TableOrder.BY_ROW);				        assertFalse(p1.equals(p2));				        p2.setDataExtractOrder(TableOrder.BY_ROW);				        assertTrue(p1.equals(p2));								        p1.setLimit(1.23);				        assertFalse(p1.equals(p2));				        p2.setLimit(1.23);				        assertTrue(p1.equals(p2));								        p1.setAggregatedItemsKey("Aggregated Items");				        assertFalse(p1.equals(p2));				        p2.setAggregatedItemsKey("Aggregated Items");				        assertTrue(p1.equals(p2));								        p1.setAggregatedItemsPaint(new GradientPaint(1.0f, 2.0f, Color.red,				                3.0f, 4.0f, Color.yellow));				        assertFalse(p1.equals(p2));				        p2.setAggregatedItemsPaint(new GradientPaint(1.0f, 2.0f, Color.red,				                3.0f, 4.0f, Color.yellow));				        assertTrue(p1.equals(p2));								        p1.setPieChart(ChartFactory.createPieChart("Title", null, true, true,				                true));				        assertFalse(p1.equals(p2));				        p2.setPieChart(ChartFactory.createPieChart("Title", null, true, true,				                true));				        assertTrue(p1.equals(p2));				    }								    /**				     * Some basic checks for the clone() method.				     */				    public void testCloning() {				        MultiplePiePlot p1 = new MultiplePiePlot();				        MultiplePiePlot p2 = null;				        try {				            p2 = (MultiplePiePlot) p1.clone();				        }				        catch (CloneNotSupportedException e) {				            e.printStackTrace();				            System.err.println("Failed to clone.");				        }				        assertTrue(p1 != p2);				        assertTrue(p1.getClass() == p2.getClass());				        assertTrue(p1.equals(p2));				    }								    /**				     * Serialize an instance, restore it, and check for equality.				     */				    public void testSerialization() {				        MultiplePiePlot p1 = new MultiplePiePlot(null);				        p1.setAggregatedItemsPaint(new GradientPaint(1.0f, 2.0f, Color.yellow,				                3.0f, 4.0f, Color.red));				        MultiplePiePlot p2 = null;				        try {				            ByteArrayOutputStream buffer = new ByteArrayOutputStream();				            ObjectOutput out = new ObjectOutputStream(buffer);				            out.writeObject(p1);				            out.close();								            ObjectInput in = new ObjectInputStream(				                new ByteArrayInputStream(buffer.toByteArray())				            );				            p2 = (MultiplePiePlot) in.readObject();				            in.close();				        }				        catch (Exception e) {				            e.printStackTrace();				        }				        assertEquals(p1, p2);				    }								}							

相关资源