List of usage examples for org.jfree.chart ChartFactory createXYLineChart
public static JFreeChart createXYLineChart(String title, String xAxisLabel, String yAxisLabel, XYDataset dataset)
From source file:net.sf.mzmine.chartbasics.graphicsexport.GraphicsExportDialog.java
/** * Launch the application./* w ww . j a va 2 s . c o m*/ */ public static void main(String[] args) { try { XYSeries s = new XYSeries("1"); IntStream.range(0, 10).forEach(i -> s.add(i, i)); XYSeriesCollection data = new XYSeriesCollection(s); JFreeChart chart = ChartFactory.createXYLineChart("XY", "time (s)", "intensity", data); GraphicsExportDialog.createInstance(); GraphicsExportDialog.openDialog(chart); } catch (Exception e) { e.printStackTrace(); } }
From source file:Graph_with_jframe_and_arduino.java
public static void main(String[] args) { // create and configure the window JFrame window = new JFrame(); window.setTitle("Sensor Graph GUI"); window.setSize(600, 400);//from w ww . j a va2 s . c o m window.setLayout(new BorderLayout()); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // create a drop-down box and connect button, then place them at the top of the window JComboBox<String> portList_combobox = new JComboBox<String>(); Dimension d = new Dimension(300, 100); portList_combobox.setSize(d); JButton connectButton = new JButton("Connect"); JPanel topPanel = new JPanel(); topPanel.add(portList_combobox); topPanel.add(connectButton); window.add(topPanel, BorderLayout.NORTH); //pause button JButton Pause_btn = new JButton("Start"); // populate the drop-down box SerialPort[] portNames; portNames = SerialPort.getCommPorts(); //check for new port available Thread thread_port = new Thread() { @Override public void run() { while (true) { SerialPort[] sp = SerialPort.getCommPorts(); if (sp.length > 0) { for (SerialPort sp_name : sp) { int l = portList_combobox.getItemCount(), i; for (i = 0; i < l; i++) { //check port name already exist or not if (sp_name.getSystemPortName().equalsIgnoreCase(portList_combobox.getItemAt(i))) { break; } } if (i == l) { portList_combobox.addItem(sp_name.getSystemPortName()); } } } else { portList_combobox.removeAllItems(); } portList_combobox.repaint(); } } }; thread_port.start(); for (SerialPort sp_name : portNames) portList_combobox.addItem(sp_name.getSystemPortName()); //for(int i = 0; i < portNames.length; i++) // portList.addItem(portNames[i].getSystemPortName()); // create the line graph XYSeries series = new XYSeries("line 1"); XYSeries series2 = new XYSeries("line 2"); XYSeries series3 = new XYSeries("line 3"); XYSeries series4 = new XYSeries("line 4"); for (int i = 0; i < 100; i++) { series.add(x, 0); series2.add(x, 0); series3.add(x, 0); series4.add(x, 10); x++; } XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(series); dataset.addSeries(series2); XYSeriesCollection dataset2 = new XYSeriesCollection(); dataset2.addSeries(series3); dataset2.addSeries(series4); //create jfree chart JFreeChart chart = ChartFactory.createXYLineChart("Sensor Readings", "Time (seconds)", "Arduino Reading", dataset); JFreeChart chart2 = ChartFactory.createXYLineChart("Sensor Readings", "Time (seconds)", "Arduino Reading 2", dataset2); //color render for chart 1 XYLineAndShapeRenderer r1 = new XYLineAndShapeRenderer(); r1.setSeriesPaint(0, Color.RED); r1.setSeriesPaint(1, Color.GREEN); r1.setSeriesShapesVisible(0, false); r1.setSeriesShapesVisible(1, false); XYPlot plot = chart.getXYPlot(); plot.setRenderer(0, r1); plot.setRenderer(1, r1); plot.setBackgroundPaint(Color.WHITE); plot.setDomainGridlinePaint(Color.DARK_GRAY); plot.setRangeGridlinePaint(Color.blue); //color render for chart 2 XYLineAndShapeRenderer r2 = new XYLineAndShapeRenderer(); r2.setSeriesPaint(0, Color.BLUE); r2.setSeriesPaint(1, Color.ORANGE); r2.setSeriesShapesVisible(0, false); r2.setSeriesShapesVisible(1, false); XYPlot plot2 = chart2.getXYPlot(); plot2.setRenderer(0, r2); plot2.setRenderer(1, r2); ChartPanel cp = new ChartPanel(chart); ChartPanel cp2 = new ChartPanel(chart2); //multiple graph container JPanel graph_container = new JPanel(); graph_container.setLayout(new BoxLayout(graph_container, BoxLayout.X_AXIS)); graph_container.add(cp); graph_container.add(cp2); //add chart panel in main window window.add(graph_container, BorderLayout.CENTER); //window.add(cp2, BorderLayout.WEST); window.add(Pause_btn, BorderLayout.AFTER_LAST_LINE); Pause_btn.setEnabled(false); //pause btn action Pause_btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (Pause_btn.getText().equalsIgnoreCase("Pause")) { if (chosenPort.isOpen()) { try { Output.write(0); } catch (IOException ex) { Logger.getLogger(Graph_with_jframe_and_arduino.class.getName()).log(Level.SEVERE, null, ex); } } Pause_btn.setText("Start"); } else { if (chosenPort.isOpen()) { try { Output.write(1); } catch (IOException ex) { Logger.getLogger(Graph_with_jframe_and_arduino.class.getName()).log(Level.SEVERE, null, ex); } } Pause_btn.setText("Pause"); } throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } }); // configure the connect button and use another thread to listen for data connectButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { if (connectButton.getText().equals("Connect")) { // attempt to connect to the serial port chosenPort = SerialPort.getCommPort(portList_combobox.getSelectedItem().toString()); chosenPort.setComPortTimeouts(SerialPort.TIMEOUT_SCANNER, 0, 0); if (chosenPort.openPort()) { Output = chosenPort.getOutputStream(); connectButton.setText("Disconnect"); Pause_btn.setEnabled(true); portList_combobox.setEnabled(false); } // create a new thread that listens for incoming text and populates the graph Thread thread = new Thread() { @Override public void run() { Scanner scanner = new Scanner(chosenPort.getInputStream()); while (scanner.hasNextLine()) { try { String line = scanner.nextLine(); int number = Integer.parseInt(line); series.add(x, number); series2.add(x, number / 2); series3.add(x, number / 1.5); series4.add(x, number / 5); if (x > 100) { series.remove(0); series2.remove(0); series3.remove(0); series4.remove(0); } x++; window.repaint(); } catch (Exception e) { } } scanner.close(); } }; thread.start(); } else { // disconnect from the serial port chosenPort.closePort(); portList_combobox.setEnabled(true); Pause_btn.setEnabled(false); connectButton.setText("Connect"); } } }); // show the window window.setVisible(true); }
From source file:graficos.GraficoTeste.java
public GraficoTeste(String title, String labelX, String labelY) { datasets = new XYSeriesCollection(); grafico = ChartFactory.createXYLineChart(title, labelY, labelY, datasets); }
From source file:graficos.GraficoTorneios.java
public GraficoTorneios(String title, String xLabel, String yLabel) { series = new XYSeriesCollection(); grafico = ChartFactory.createXYLineChart(title, xLabel, yLabel, series); }
From source file:metodosnumericos.Graficador.java
public ChartPanel series(String f, double xi, double xs) { Evaluador func = new Evaluador(); XYSeries series = new XYSeries("Funcion"); double iter = xi; while (iter < xs) { double y = func.Evaluador2(f, iter); series.add(iter, y);/*from w w w .j a v a 2s .c o m*/ System.out.println(iter + " " + y); iter = iter + 0.2; } XYSeriesCollection collection = new XYSeriesCollection(series); JFreeChart chart = ChartFactory.createXYLineChart("Grafica", "X", "Y", collection); ChartPanel panel = new ChartPanel(chart); panel.setPreferredSize(new java.awt.Dimension(400, 300)); return panel; }
From source file:org.chocosolver.gui.panels.DepthPanel.java
public DepthPanel(GUI frame) { super(frame); depth = new XYSeries("Depth"); XYSeriesCollection scoll = new XYSeriesCollection(); scoll.addSeries(depth);/*w w w.ja v a 2 s.co m*/ JFreeChart chart = ChartFactory.createXYLineChart("Depth", "Nodes", "Depth", scoll); this.setChart(chart); solver.plugMonitor(this); }
From source file:org.chocosolver.gui.panels.FreeVarsPanel.java
public FreeVarsPanel(GUI frame) { super(frame); series = new XYSeries("Free variables"); XYSeriesCollection scoll = new XYSeriesCollection(); scoll.addSeries(series);/* ww w . j a v a 2 s.c o m*/ JFreeChart chart = ChartFactory.createXYLineChart("Free variables", "Nodes", "free vars", scoll); this.setChart(chart); solver.plugMonitor(this); }
From source file:AppPackage.HumidityGraph.java
/** * *//* ww w . j a v a 2 s. c om*/ public HumidityGraph() { try { JFrame window = new JFrame(); window.setSize(1000, 615); window.setBackground(Color.blue); Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); int x = (int) ((dimension.getWidth() - window.getWidth()) / 2); int y = (int) ((dimension.getHeight() - window.getHeight()) / 2); window.setLocation(x, y); XYSeries series = new XYSeries("Humidity "); XYSeriesCollection dataset = new XYSeriesCollection(series); JFreeChart chart = ChartFactory.createXYLineChart("Humidity against Time", "Time(seconds)", "Humidity(percentage)", dataset); window.add(new ChartPanel(chart), BorderLayout.CENTER); window.setVisible(true); } catch (Exception e) { System.out.print("Chart exception:" + e); } initComponents(); }
From source file:utlis.HistogramPlot.java
public JFreeChart plotGrayChart(int[] histogram) { XYSeries xysBrightnes = new XYSeries("Brightnes"); for (int i = 0; i < histogram.length; i++) { xysBrightnes.add(i, histogram[i]); }/*from w w w. ja v a 2 s . c o m*/ XYSeriesCollection collection = new XYSeriesCollection(); collection.addSeries(xysBrightnes); JFreeChart chart = ChartFactory.createXYLineChart("Histogram", "Color Value", "Pixel count", collection); try { ChartUtilities.saveChartAsJPEG(new File("chart.jpg"), chart, 500, 300); } catch (IOException ex) { Logger.getLogger(HistogramPlot.class.getName()).log(Level.SEVERE, null, ex); } return chart; }
From source file:org.chocosolver.gui.panels.LeftRightBranchPanel.java
public LeftRightBranchPanel(GUI frame) { super(frame); serie1 = new XYSeries("Left-Right decisions"); serie2 = new XYSeries("Depth"); XYSeriesCollection scoll = new XYSeriesCollection(); scoll.addSeries(serie1);/*from w ww .j a va 2 s. com*/ scoll.addSeries(serie2); JFreeChart chart = ChartFactory.createXYLineChart("LR decisions", "Nodes", "Left-Right decisions", scoll); this.setChart(chart); solver.plugMonitor(this); }