1 6 7 package org.jfree.experimental.chart.demo; 8 9 import javax.swing.JPanel ; 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 26 public class LogAxisDemo1 extends ApplicationFrame { 27 28 33 public LogAxisDemo1(String title) { 34 super(title); 35 JPanel chartPanel = createDemoPanel(); 36 chartPanel.setPreferredSize(new java.awt.Dimension (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 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 83 public static JPanel createDemoPanel() { 84 JFreeChart chart = createChart(createDataset()); 85 return new ChartPanel(chart); 86 } 87 88 93 public static void main(String [] 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 |