List of usage examples for org.jfree.chart ChartFactory createXYLineChart
public static JFreeChart createXYLineChart(String title, String xAxisLabel, String yAxisLabel, XYDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls)
From source file:org.jfree.chart.demo.SparklineDemo1.java
public static void main(String args[]) { XYSeries xyseries = new XYSeries("Series 1"); xyseries.add(1.0D, 1.0D);//from w w w . j a va 2s . c o m xyseries.add(2D, 3D); xyseries.add(3D, 2D); xyseries.add(4D, 4D); XYSeriesCollection xyseriescollection = new XYSeriesCollection(); xyseriescollection.addSeries(xyseries); JFreeChart jfreechart = ChartFactory.createXYLineChart(null, "X", "Y", xyseriescollection, PlotOrientation.VERTICAL, false, false, false); XYPlot xyplot = (XYPlot) jfreechart.getPlot(); xyplot.setInsets(RectangleInsets.ZERO_INSETS); xyplot.setDomainGridlinesVisible(false); xyplot.setRangeGridlinesVisible(false); xyplot.setOutlinePaint(null); xyplot.getDomainAxis().setVisible(false); xyplot.getRangeAxis().setVisible(false); try { ChartUtilities.saveChartAsPNG(new File("Sparky.png"), jfreechart, 100, 20); } catch (IOException ioexception) { ioexception.printStackTrace(); } }
From source file:ricecompression.RiceCompression.java
/** * @param args the command line arguments *//* www. j a v a 2 s. c o m*/ public static void main(String[] args) { RiceCompression rice = new RiceCompression(); XYSeries data = new XYSeries("RICE"); for (int i = -1023; i < 1024; i++) { String riceCode = rice.compress(32, i); data.add(i, riceCode.length()); } XYSeriesCollection collection = new XYSeriesCollection(data); JFreeChart grafica = ChartFactory.createXYLineChart("RICE", "Nmero a codificar", "Longitud del codi Rice", collection, PlotOrientation.VERTICAL, true, true, false); ChartPanel Panel = new ChartPanel(grafica); JFrame Ventana = new JFrame("JFreeChart"); Ventana.getContentPane().add(Panel); Ventana.pack(); Ventana.setVisible(true); Ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }
From source file:org.jfree.chart.demo.SecondDemo.java
public static void main(String args[]) { XYSeries xyseries = new XYSeries("Advisory Range"); xyseries.add(new Integer(1200), new Integer(1)); xyseries.add(new Integer(1500), new Integer(1)); XYSeries xyseries1 = new XYSeries("Normal Range"); xyseries1.add(new Integer(2000), new Integer(4)); xyseries1.add(new Integer(2300), new Integer(4)); XYSeries xyseries2 = new XYSeries("Recommended"); xyseries2.add(new Integer(2100), new Integer(2)); XYSeries xyseries3 = new XYSeries("Current"); xyseries3.add(new Integer(2400), new Integer(3)); XYSeriesCollection xyseriescollection = new XYSeriesCollection(); xyseriescollection.addSeries(xyseries); xyseriescollection.addSeries(xyseries1); xyseriescollection.addSeries(xyseries2); xyseriescollection.addSeries(xyseries3); JFreeChart jfreechart = ChartFactory.createXYLineChart("My Chart", "Calories", "Y", xyseriescollection, PlotOrientation.VERTICAL, true, true, false); StandardXYItemRenderer standardxyitemrenderer = new StandardXYItemRenderer(3, null); XYPlot xyplot = (XYPlot) jfreechart.getPlot(); xyplot.setRenderer(standardxyitemrenderer); ValueAxis valueaxis = xyplot.getRangeAxis(); valueaxis.setTickLabelsVisible(false); valueaxis.setRange(0.0D, 5D);// w w w . ja v a 2s. c om ChartFrame chartframe = new ChartFrame("Test", jfreechart); chartframe.pack(); chartframe.setVisible(true); }
From source file:Trabalho_1.java
/** * @param args the command line arguments *//* w ww . ja va2 s .c o m*/ public static void main(String[] args) { // TODO code application logic here Ambiente n = new Ambiente(51, 51); n.inicializa(100, 30); XYSeries series = new XYSeries("Lobos"); XYSeries series1 = new XYSeries("Ovelhas"); XYSeries series2 = new XYSeries("Vegetacao"); for (int i = 0; i < 5000; i++) { n.iteracao(i); series.add(i, n.getLobos()); series1.add(i, n.getOvelhas()); series2.add(i, n.getVegetacao()); } // Add the series to your data set XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(series); dataset.addSeries(series1); dataset.addSeries(series2); XYSeriesCollection dataset2 = new XYSeriesCollection(); dataset2.addSeries(series); dataset2.addSeries(series1); // Generate the graph JFreeChart chart = ChartFactory.createXYLineChart("Lobos, Ovelhas e Vegetacao", "Iteracoes", "Numero de Animais", dataset, PlotOrientation.VERTICAL, // Plot Orientation true, // Show Legend true, // Use tooltips false // Configure chart to generate URLs? ); try { ChartUtilities.saveChartAsJPEG(new File("Grafico.jpg"), chart, 640, 480); } catch (IOException e) { System.err.println("Problem occurred creating chart."); } // Generate the graph JFreeChart chart2 = ChartFactory.createXYLineChart("Lobos e ovelhas", "Iteracoes", "Numero de Animais", dataset2, PlotOrientation.VERTICAL, // Plot Orientation true, // Show Legend true, // Use tooltips false // Configure chart to generate URLs? ); try { ChartUtilities.saveChartAsJPEG(new File("Grafico2.jpg"), chart2, 640, 480); } catch (IOException e) { System.err.println("Problem occurred creating chart."); } }
From source file:LoggerGUI.MainFrame.java
public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { /*JFrame frame = new JFrame("Charts"); // w ww .java 2 s .c o m frame.setSize(700, 400); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); */ DataLogger demo = new DataLogger("DemoUI", 51); Container contentPane = demo.getContentPane(); demo.pack(); demo.setVisible(true); demo.setSize(100, 100); demo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); demo.setVisible(true); XYDataset ds = createDataset(); JFreeChart chart = ChartFactory.createXYLineChart("Test Chart", "x", "y", ds, PlotOrientation.HORIZONTAL, true, true, false); ChartPanel cp = new ChartPanel(chart); //cp.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); //contentPane.add(cp, BorderLayout.EAST); //cp.setSize(100,100); //RefineryUtilities.centerFrameOnScreen(demo); demo.pack(); } }); }
From source file:org.jfree.chart.demo.Second.java
/** * Starting point for the demo./*ww w.j ava2 s.c o m*/ * * @param args ignored. */ public static void main(final String[] args) { // create some data... final XYSeries series1 = new XYSeries("Advisory Range"); series1.add(new Integer(1200), new Integer(1)); series1.add(new Integer(1500), new Integer(1)); final XYSeries series2 = new XYSeries("Normal Range"); series2.add(new Integer(2000), new Integer(4)); series2.add(new Integer(2300), new Integer(4)); final XYSeries series3 = new XYSeries("Recommended"); series3.add(new Integer(2100), new Integer(2)); final XYSeries series4 = new XYSeries("Current"); series4.add(new Integer(2400), new Integer(3)); final XYSeriesCollection data = new XYSeriesCollection(); data.addSeries(series1); data.addSeries(series2); data.addSeries(series3); data.addSeries(series4); // create a chart... final JFreeChart chart = ChartFactory.createXYLineChart("My Chart", "Calories", "Y", data, PlotOrientation.VERTICAL, true, true, false); // **************************************************************************** // * JFREECHART DEVELOPER GUIDE * // * The JFreeChart Developer Guide, written by David Gilbert, is available * // * to purchase from Object Refinery Limited: * // * * // * http://www.object-refinery.com/jfreechart/guide.html * // * * // * Sales are used to provide funding for the JFreeChart project - please * // * support us so that we can continue developing free software. * // **************************************************************************** final XYItemRenderer renderer = new StandardXYItemRenderer(StandardXYItemRenderer.SHAPES_AND_LINES, null); final XYPlot plot = (XYPlot) chart.getPlot(); plot.setRenderer(renderer); final ValueAxis axis = plot.getRangeAxis(); axis.setTickLabelsVisible(false); axis.setRange(0.0, 5.0); // create and display a frame... final ChartFrame frame = new ChartFrame("Test", chart); frame.pack(); frame.setVisible(true); }
From source file:visualize.Visualize.java
public static void main(String[] args) throws NotEnoughDataPointsException, IllDefinedDataPointsException { XYSeries seriesQ = new XYSeries("quadratic"); XYSeries seriesL = new XYSeries("linear"); XYSeries seriesI = new XYSeries("intepolated"); final ArrayList<Point> pointsQ = new ArrayList<Point>(); for (double x = -5.0; x <= 5.0; x = x + 0.5) pointsQ.add(new Point(new double[] { x, 2.0 * x * x * x - 10 * x * x })); final LinearFunction fl = new LinearFunction(); final HigherOrderPolynomialFunction fq = new HigherOrderPolynomialFunction(3); final InterpolatedPolynomial<LinearFunction, HigherOrderPolynomialFunction> fi = new InterpolatedPolynomial<LinearFunction, HigherOrderPolynomialFunction>( new LinearFunction(), fq.copy(), 0.5); fl.fitFunction(pointsQ);//from w w w. j a va2 s .c o m fq.fitFunction(pointsQ); fi.fitFunction(pointsQ); System.out.println(fl); System.out.println(fq); System.out.println(fi.interpolatedFunction); for (double x = -5.0; x <= 5.0; x = x + 0.5) { seriesQ.add(x, fq.predict(x)); seriesL.add(x, fl.predict(x)); seriesI.add(x, fi.predict(x)); } XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(seriesQ); dataset.addSeries(seriesL); dataset.addSeries(seriesI); JFreeChart chart = ChartFactory.createXYLineChart("XY Chart", "x-axis", "y-axis", dataset, PlotOrientation.VERTICAL, true, true, false); final XYPlot plot = chart.getXYPlot(); final XYItemRenderer renderer = plot.getRenderer(); renderer.setSeriesPaint(0, new Color(0, 0, 255)); renderer.setSeriesStroke(0, new BasicStroke(0.5f)); renderer.setSeriesPaint(1, new Color(255, 0, 0)); renderer.setSeriesStroke(1, new BasicStroke(0.5f)); renderer.setSeriesPaint(2, new Color(0, 200, 40)); renderer.setSeriesStroke(2, new BasicStroke(1.5f)); //chart.getXYPlot().setRenderer(new XYSplineRenderer(100)); JPanel panel = new JPanel(); ChartPanel chartPanel = new ChartPanel(chart); panel.add(chartPanel); JFrame frame = new JFrame(); frame.setContentPane(panel); frame.validate(); Dimension d = new Dimension(800, 500); frame.setSize(d); frame.setVisible(true); try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("starting"); for (int lambda = 0; lambda <= 100; ++lambda) { fi.setLambda(lambda / 100.0); fi.fitFunction(pointsQ); System.out.println(fi.interpolatedFunction); dataset.getSeries(2).clear(); for (double x = -5.0; x <= 5.0; x = x + 0.5) seriesI.add(x, fi.predict(x)); try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } // makeScreenshot( lambda ); } }
From source file:PowerMethod.power_method.java
public static void main(String[] args) { ////////////////////////////////////////////////////// // Edit vals to contain values for matrix A // // Edit vals2 to contain values for initial vector // ////////////////////////////////////////////////////// double[][] vals = { { 3, 4 }, { 3, 1 } }; RealMatrix A = new Array2DRowRealMatrix(vals); double[][] vals2 = { { 1 }, { 1 } }; RealMatrix u = new Array2DRowRealMatrix(vals2); power_object a = power_method(A, u, .1, 7); List<RealMatrix> matrices = genMatrices(); List<trace_det> trace_dets = new ArrayList<>(); double trace; double det;/*from www . j a v a2 s. c o m*/ int iterA; int iterInverseA; for (RealMatrix r : matrices) { MatrixMethods m = new MatrixMethods(r); RealMatrix inverseR = m.inverseMatrix(); power_object largestVal = power_method(r, u, .00005, 100); power_object smallestVal = power_method(inverseR, u, .00005, 100); if (largestVal == null || smallestVal == null) { continue; } trace = m.trace(); det = m.determinant(); iterA = largestVal.getNumN(); iterInverseA = smallestVal.getNumN(); trace_det td = new trace_det(trace, det, iterA, iterInverseA); trace_dets.add(td); } JFreeChart chart = ChartFactory.createXYLineChart("Trace vs. Determinant for Power Method", "Determinant", "Trace", createDataSetA(trace_dets), PlotOrientation.VERTICAL, true, true, false); ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(560, 367)); final XYPlot plot = chart.getXYPlot(); XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(); renderer.setSeriesPaint(0, Color.RED); renderer.setSeriesPaint(1, Color.BLUE); renderer.setSeriesPaint(2, Color.GREEN); renderer.setSeriesPaint(3, Color.BLACK); renderer.setSeriesPaint(4, Color.YELLOW); renderer.setSeriesPaint(5, Color.PINK); renderer.setSeriesPaint(6, Color.ORANGE); renderer.setSeriesPaint(7, Color.GRAY); renderer.setSeriesPaint(8, Color.MAGENTA); renderer.setSeriesPaint(9, Color.LIGHT_GRAY); renderer.setSeriesPaint(10, Color.DARK_GRAY); //renderer.setSeriesStroke( 0 , new BasicStroke( 3.0f ) ); //renderer.setSeriesStroke( 1 , new BasicStroke( 2.0f ) ); plot.setRenderer(renderer); ChartFrame frame = new ChartFrame("Power Method", chart); frame.pack(); frame.setVisible(true); JFreeChart inverseChart = ChartFactory.createXYLineChart("Trace vs. Determinant for Inverse Power Method", "Determinant", "Trace", createDataSetAInverse(trace_dets), PlotOrientation.VERTICAL, true, true, false); ChartPanel inverseChartPanel = new ChartPanel(inverseChart); inverseChartPanel.setPreferredSize(new java.awt.Dimension(560, 367)); final XYPlot inversePlot = inverseChart.getXYPlot(); XYLineAndShapeRenderer inverseRenderer = new XYLineAndShapeRenderer(); inverseRenderer.setSeriesPaint(0, Color.RED); inverseRenderer.setSeriesPaint(1, Color.BLUE); inverseRenderer.setSeriesPaint(2, Color.GREEN); inverseRenderer.setSeriesPaint(3, Color.BLACK); inverseRenderer.setSeriesPaint(4, Color.YELLOW); inverseRenderer.setSeriesPaint(5, Color.PINK); inverseRenderer.setSeriesPaint(6, Color.ORANGE); inverseRenderer.setSeriesPaint(7, Color.GRAY); inverseRenderer.setSeriesPaint(8, Color.MAGENTA); inverseRenderer.setSeriesPaint(9, Color.LIGHT_GRAY); inverseRenderer.setSeriesPaint(10, Color.DARK_GRAY); inversePlot.setRenderer(renderer); ChartFrame inverseFrame = new ChartFrame("Power Method", inverseChart); inverseFrame.pack(); inverseFrame.setVisible(true); }
From source file:pl.dpbz.poid.zadanie3.Main.java
public static void main(String args[]) throws UnsupportedAudioFileException, IOException { //Zassanie pliku File f = new File("ExampleSounds/artificial/easy/100Hz.wav"); Integer[] ints = WaveToSamplesConverter.convertWaveToIntSamples(f); double samplingFrequency = WaveToSamplesConverter.getSamplingFrequency(f); //Zwyky sound, ktry nie potrzebuje zespolonych elementw Sound s = new Sound(ints, samplingFrequency); //Obliczenie czstotliwoci przy pomocy fazwki PhaseSpaceMultiDimensional pS = new PhaseSpaceMultiDimensional(s); pS.setupPhaseSpace();/*from w w w. j a v a 2s. c o m*/ pS.computeFrequency(); System.out.println("Phase space " + pS.getFrequency()); //Zespolony dwik, ktry jest bardziej zoony ComplexSound cs = new ComplexSound(ints, samplingFrequency, 15); //To oblicza fouriera cs.setupElementsOfComplexSound(); //Tutaj obliczanie czstotliwoci przy pomocy fouriera CombFiltering cf = new CombFiltering(cs, samplingFrequency); cf.computeFrequency(); cf.drawComplexSound(); System.out.println("Comb Filtering " + cf.getFrequency()); //Przy sekwencjach nie ma majstrowania przy ustawieniach, uytkownik // zmiennie moe podawa tylko liczb prbek, reszt jak czstotliwo prbkowania // i audio format pobiera si z otwieranego pliku //Test sekwencji na fazie File file = new File("ExampleSounds/seq/DWK_violin.wav"); Integer[] seqInte = WaveToSamplesConverter.convertWaveToIntSamples(file); System.out.println("Samples overview " + seqInte.length); double seqSamplingFrequency = WaveToSamplesConverter.getSamplingFrequency(file); int samplesPerPart = 3000; SamplesToWaveConverter conv = new PhaseSpaceSampleConverter(seqSamplingFrequency, samplesPerPart, WaveToSamplesConverter.getAudioFormat(file)); conv.setupFrequenciesFromSamples(seqInte); System.out.println("Zapisuj"); conv.saveGeneratedSamples("XDPhase.wav"); //Test sekwencji na grzebieniu SamplesToWaveConverter conv2 = new CombFilteringSampleConverter(seqSamplingFrequency, samplesPerPart, WaveToSamplesConverter.getAudioFormat(file)); conv2.setupFrequenciesFromSamples(seqInte); System.out.println("Zapisuj"); conv2.saveGeneratedSamples("XDComb.wav"); //Rysowanie wykresu sygnau dwikowego final XYSeries dist = new XYSeries("P0"); int index = 0; for (Integer i : ints) { dist.add(index / samplingFrequency, i); index++; } final XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(dist); JFreeChart chart = ChartFactory.createXYLineChart(f.getName(), "index", "Distance", dataset, PlotOrientation.VERTICAL, true, true, false); XYPlot xyPlot = (XYPlot) chart.getPlot(); xyPlot.setDomainCrosshairVisible(true); xyPlot.setRangeCrosshairVisible(true); XYItemRenderer renderer = xyPlot.getRenderer(); renderer.setSeriesPaint(0, Color.blue); NumberAxis domain = (NumberAxis) xyPlot.getRangeAxis(); domain.setRange(-32768, 32768); ChartDrawer.drawChart(chart); System.out.println("FINISHED"); }
From source file:com.bpd.jfreechart.Chart.java
/** * Test program that will display a JFreeChart showing interpolated data points. * // www. j a v a2 s.c om * @param args <b>"1"</b> to display Series 1. <b>"2"</b> to display Series 2. <b>"0"</b> to * display both series. */ public static void main(String... args) { if (args.length != 1) { System.err.println("Usage: java Chart [0|1|2]\n\n -- 0: Display Series 1."); System.err.println(" -- 1: Display Series 2.\n -- 2: Display both series."); return; } String option = args[0]; if (!"0".equals(option) && !"1".equals(option) && !"2".equals(option)) { System.err.println("Invalid argument: " + option); return; } List<Point<Number, Number>> list1 = new ArrayList<Point<Number, Number>>(); list1.add(new Point<Number, Number>(100, 100)); list1.add(new Point<Number, Number>(200, 200)); list1.add(new Point<Number, Number>(300, 400)); list1.add(new Point<Number, Number>(400, 200)); list1.add(new Point<Number, Number>(500, 100)); List<Point<Number, Number>> list2 = new ArrayList<Point<Number, Number>>(); list2.add(new Point<Number, Number>(50, 100.0)); list2.add(new Point<Number, Number>(150, 200.0)); list2.add(new Point<Number, Number>(250, 400.0)); list2.add(new Point<Number, Number>(350, 600.0)); list2.add(new Point<Number, Number>(450, 400.0)); list2.add(new Point<Number, Number>(550, 200.0)); List<List<Point<Number, Number>>> lists = new ArrayList<List<Point<Number, Number>>>(); List<Point<Number, Number>> extrapolatedList1 = new ArrayList<Point<Number, Number>>(); List<Point<Number, Number>> extrapolatedList2 = new ArrayList<Point<Number, Number>>(); if ("1".equals(option)) { lists.add(list1); extrapolatedList1 = Interpolator.interpolate(list1, lists); } else if ("2".equals(option)) { lists.add(list2); extrapolatedList2 = Interpolator.interpolate(list2, lists); } else if ("0".equals(option)) { lists.add(list1); lists.add(list2); extrapolatedList1 = Interpolator.interpolate(list1, lists); extrapolatedList2 = Interpolator.interpolate(list2, lists); } TimeSeries series1 = new TimeSeries("Series 1", FixedMillisecond.class); for (Point<Number, Number> dataPoint : extrapolatedList1) { if ("1".equals(option) || "0".equals(option)) { series1.add(new FixedMillisecond(dataPoint.getX().longValue()), dataPoint.getY()); } System.err.println(dataPoint.getX() + "\t" + dataPoint.getY()); } System.err.println(); TimeSeries series2 = new TimeSeries("Series 2", FixedMillisecond.class); for (Point<Number, Number> dataPoint : extrapolatedList2) { if ("2".equals(option) || "0".equals(option)) { series2.add(new FixedMillisecond(dataPoint.getX().longValue()), dataPoint.getY()); } System.err.println(dataPoint.getX() + "\t" + dataPoint.getY()); } TimeSeriesCollection dataset = new TimeSeriesCollection(); if ("1".equals(option)) { dataset.addSeries(series1); } else if ("2".equals(option)) { dataset.addSeries(series2); } else if ("0".equals(option)) { dataset.addSeries(series1); dataset.addSeries(series2); } JFreeChart chart = ChartFactory.createXYLineChart("Test", null, null, dataset, PlotOrientation.VERTICAL, false, true, false); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) chart.getXYPlot().getRenderer(); renderer.setSeriesShapesVisible(0, true); renderer.setSeriesShapesVisible(1, true); ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setBorder(BorderFactory.createEmptyBorder(8, 8, 8, 8)); JFrame frame = new JFrame(); frame.getContentPane().add(chartPanel); frame.pack(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); }