KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jfree > experimental > chart > demo > LogAxisDemo1


1 /* -----------------
2  * LogAxisDemo1.java
3  * -----------------
4  * (C) Copyright 2006, by Object Refinery Limited.
5  */

6
7 package org.jfree.experimental.chart.demo;
8
9 import javax.swing.JPanel JavaDoc;
10
11 import org.jfree.chart.ChartFactory;
12 import org.jfree.chart.ChartPanel;
13 import org.jfree.chart.JFreeChart;
14 import org.jfree.chart.plot.PlotOrientation;
15 import org.jfree.chart.plot.XYPlot;
16 import org.jfree.data.xy.XYDataset;
17 import org.jfree.data.xy.XYSeries;
18 import org.jfree.data.xy.XYSeriesCollection;
19 import org.jfree.experimental.chart.axis.LogAxis;
20 import org.jfree.ui.ApplicationFrame;
21 import org.jfree.ui.RefineryUtilities;
22
23 /**
24  * A simple demo showing the use of the {@link LogAxis} class.
25  */

26 public class LogAxisDemo1 extends ApplicationFrame {
27
28     /**
29      * Creates a new instance of the demo.
30      *
31      * @param title the frame title.
32      */

33     public LogAxisDemo1(String JavaDoc title) {
34         super(title);
35         JPanel JavaDoc chartPanel = createDemoPanel();
36         chartPanel.setPreferredSize(new java.awt.Dimension JavaDoc(500, 270));
37         setContentPane(chartPanel);
38     }
39     
40     private static JFreeChart createChart(XYDataset dataset) {
41         JFreeChart chart = ChartFactory.createScatterPlot(
42             "Log Axis Demo 1",
43             "X",
44             "Y",
45             dataset,
46             PlotOrientation.VERTICAL,
47             true,
48             true,
49             false
50         );
51         XYPlot plot = (XYPlot) chart.getPlot();
52         LogAxis xAxis = new LogAxis("X");
53         LogAxis yAxis = new LogAxis("Y");
54         plot.setDomainAxis(xAxis);
55         plot.setRangeAxis(yAxis);
56         return chart;
57     }
58     
59     /**
60      * Creates a sample dataset.
61      *
62      * @return A sample dataset.
63      */

64     private static XYDataset createDataset() {
65         XYSeries series = new XYSeries("Random Data");
66         series.add(1.0, 500.2);
67         series.add(5.0, 694.1);
68         series.add(4.0, 100.0);
69         series.add(12.5, 734.4);
70         series.add(17.3, 453.2);
71         series.add(21.2, 500.2);
72         series.add(21.9, 9005.5);
73         series.add(25.6, 734.4);
74         series.add(3000.0, 453.2);
75         return new XYSeriesCollection(series);
76     }
77
78     /**
79      * Creates a panel for the demo (used by SuperDemo.java).
80      *
81      * @return A panel.
82      */

83     public static JPanel JavaDoc createDemoPanel() {
84         JFreeChart chart = createChart(createDataset());
85         return new ChartPanel(chart);
86     }
87     
88     /**
89      * Starting point for the demonstration application.
90      *
91      * @param args ignored.
92      */

93     public static void main(String JavaDoc[] args) {
94
95         LogAxisDemo1 demo = new LogAxisDemo1("Log Axis Demo 1");
96         demo.pack();
97         RefineryUtilities.centerFrameOnScreen(demo);
98         demo.setVisible(true);
99
100     }
101
102 }
103
Popular Tags