List of usage examples for org.jfree.data.xy XYSeriesCollection addSeries
public void addSeries(XYSeries series)
From source file:iad_2_gg.gui.ChartDialog.java
private XYDataset createDataset(List<Double> values1, String sName1, List<Double> values2, String sName2, int interval) { XYSeriesCollection data = new XYSeriesCollection(); XYSeries serie1 = new XYSeries(sName1); int i = 1;//w ww .ja v a2 s . c om for (double v : values1) { serie1.add((i * interval), v); i++; } data.addSeries(serie1); XYSeries serie2 = new XYSeries(sName2); i = 1; for (double v : values2) { serie2.add((i * interval), v); i++; } data.addSeries(serie2); return data; }
From source file:org.gephi.statistics.plugin.WeightedDegree.java
public String getDirectedReport() { //Distribution series XYSeries dSeries = ChartUtils.createXYSeries(degreeDist, "Degree Distribution"); XYSeries idSeries = ChartUtils.createXYSeries(inDegreeDist, "In-Degree Distribution"); XYSeries odSeries = ChartUtils.createXYSeries(outDegreeDist, "Out-Degree Distribution"); XYSeriesCollection dataset1 = new XYSeriesCollection(); dataset1.addSeries(dSeries); XYSeriesCollection dataset2 = new XYSeriesCollection(); dataset2.addSeries(idSeries);// w ww . java2s .c om XYSeriesCollection dataset3 = new XYSeriesCollection(); dataset3.addSeries(odSeries); JFreeChart chart1 = ChartFactory.createXYLineChart("Degree Distribution", "Value", "Count", dataset1, PlotOrientation.VERTICAL, true, false, false); ChartUtils.decorateChart(chart1); ChartUtils.scaleChart(chart1, dSeries, false); String degreeImageFile = ChartUtils.renderChart(chart1, "w-degree-distribution.png"); JFreeChart chart2 = ChartFactory.createXYLineChart("In-Degree Distribution", "Value", "Count", dataset2, PlotOrientation.VERTICAL, true, false, false); ChartUtils.decorateChart(chart2); ChartUtils.scaleChart(chart2, dSeries, false); String indegreeImageFile = ChartUtils.renderChart(chart2, "indegree-distribution.png"); JFreeChart chart3 = ChartFactory.createXYLineChart("Out-Degree Distribution", "Value", "Count", dataset3, PlotOrientation.VERTICAL, true, false, false); ChartUtils.decorateChart(chart3); ChartUtils.scaleChart(chart3, dSeries, false); String outdegreeImageFile = ChartUtils.renderChart(chart3, "outdegree-distribution.png"); NumberFormat f = new DecimalFormat("#0.000"); String report = "<HTML> <BODY> <h1>Weighted Degree Report </h1> " + "<hr>" + "<br> <h2> Results: </h2>" + "Average Weighted Degree: " + f.format(avgWDegree) + "<br /><br />" + degreeImageFile + "<br /><br />" + indegreeImageFile + "<br /><br />" + outdegreeImageFile + "</BODY></HTML>"; return report; }
From source file:Presentation.MainWindow.java
/** Ajout la fentre des graphiques de temprature et d'humidit en temps rel */ public void initGraphs() { XYSeriesCollection datasetT = new XYSeriesCollection(); XYSeriesCollection datasetH = new XYSeriesCollection(); datasetT.addSeries(seriesT); datasetH.addSeries(seriesH);/*from ww w .j a va 2 s .com*/ XYPlot plotT = new XYPlot(datasetT, new NumberAxis(), new NumberAxis(), new DefaultXYItemRenderer()); XYPlot plotH = new XYPlot(datasetH, new NumberAxis(), new NumberAxis(), new DefaultXYItemRenderer()); //plot.setDataset(1, datasetT); // plot.setRenderer(1, new DefaultXYItemRenderer()); plotH.getRenderer().setSeriesPaint(0, Color.BLUE); JFreeChart chartT = new JFreeChart("Graphique de temprature", JFreeChart.DEFAULT_TITLE_FONT, plotT, true); JFreeChart chartH = new JFreeChart("Graphique d'humidit", JFreeChart.DEFAULT_TITLE_FONT, plotH, true); ChartPanel gPanelT = new ChartPanel(chartT); ChartPanel gPanelH = new ChartPanel(chartH); mPanel.add(gPanelT); mPanel.add(gPanelH); }
From source file:se.lnu.cs.doris.metrics.SLOC.java
private void generateImage(ImageType type) throws Exception { if (this.m_mainDir == null) { throw new Exception("Base directory not set."); }/* w w w . ja v a 2s. co m*/ XYSeries linesOfCodeTotal = new XYSeries("Total lines"); XYSeries linesOfCode = new XYSeries("Lines of code"); XYSeries linesOfComments = new XYSeries("Lines of comments"); XYSeries baseLine = new XYSeries("index 100"); for (File f : this.m_mainDir.listFiles()) { if (f.isDirectory() && !f.getName().contains(this.m_avoid)) { int commitNumber = Utilities.parseInt(f.getName()); int slocd = 0; int slocmt = 0; int sloct = 0; for (File sd : f.listFiles()) { if (!sd.getName().toLowerCase().contains(this.m_avoid)) { slocd += this.countLines(sd, false); slocmt += this.countLines(sd, true); sloct += slocd + slocmt; } } if (this.m_baseValueTotal < 0) { this.m_baseValueTotal = sloct; this.m_baseValueComments = slocmt; this.m_baseValueCode = slocd; sloct = 100; slocmt = 100; slocd = 100; } else { sloct = (int) ((double) sloct / (double) this.m_baseValueTotal * 100); slocmt = (int) ((double) slocmt / (double) this.m_baseValueComments * 100); slocd = (int) ((double) slocd / (double) this.m_baseValueCode * 100); } linesOfCodeTotal.add(commitNumber, sloct); linesOfCode.add(commitNumber, slocd); linesOfComments.add(commitNumber, slocmt); baseLine.add(commitNumber, 100); } } XYSeriesCollection collection = new XYSeriesCollection(); collection.addSeries(linesOfCodeTotal); collection.addSeries(linesOfCode); collection.addSeries(linesOfComments); collection.addSeries(baseLine); JFreeChart chart = ChartFactory.createXYLineChart( "Source lines of code change for " + this.m_projectName + " \nBase value code: " + this.m_baseValueCode + "\nBase value comments: " + this.m_baseValueComments, "Commit", "SLOC change %", collection, PlotOrientation.VERTICAL, true, true, false); XYPlot plot = chart.getXYPlot(); NumberAxis xAxis = (NumberAxis) plot.getDomainAxis(); xAxis.setTickUnit(new NumberTickUnit(2)); NumberAxis yAxis = (NumberAxis) plot.getRangeAxis(); yAxis.setTickUnit(new NumberTickUnit(10)); switch (type) { case JPEG: ChartUtilities.saveChartAsJPEG(new File(this.m_mainDir.getAbsolutePath(), "sloc_chart.jpg"), chart, 1000, 720); break; case PNG: ChartUtilities.saveChartAsPNG(new File(this.m_mainDir.getAbsolutePath(), "sloc_chart.png"), chart, 1000, 720); break; default: break; } }
From source file:edu.ucla.stat.SOCR.chart.demo.MultiIndexChart.java
/** * Creates a sample dataset./*from w w w. ja va2 s . c om*/ * * @return a sample dataset. */ protected XYDataset createDataset1(boolean isDemo) { if (isDemo) { row_count = 11; raw_x2 = new String[2][row_count]; /*raw_x2[0][0] = "1.0"; raw_x2[0][1] = "2.0"; raw_x2[0][2] = "3.0"; raw_x2[0][3] = "4.0"; raw_x2[0][4] = "5.0"; raw_x2[0][5] = "6.0"; raw_x2[0][6] = "76.0"; raw_x2[0][7] = "78.0"; raw_x2[0][8] = "7.0"; raw_x2[0][9] = "8.0"; raw_x2[1][0] = "1.0"; raw_x2[1][1] = "3.0"; raw_x2[1][2] = "5.0"; raw_x2[1][3] = "9.0"; raw_x2[1][4] = "7.0"; raw_x2[1][5] = "4.0"; raw_x2[1][6] = "70.0"; raw_x2[1][7] = "30.0"; raw_x2[1][8] = "9.0"; raw_x2[1][9] = "7.0";raw_x2[1][10] = "20.0"; */ XYSeries series1 = new XYSeries("Data 1"); series1.add(1, 1.0); series1.add(2, 2.0); series1.add(3, 3.0); series1.add(4, 4.0); series1.add(5, 5.0); series1.add(6, 6.0); series1.add(7, 76.0); series1.add(8, 78.0); series1.add(9, 7.0); series1.add(10, 8.0); for (int i = 0; i < 10; i++) raw_x2[0][i] = series1.getY(i).toString(); XYSeries series2 = new XYSeries("Data 2"); series2.add(1, 1.0); series2.add(2, 3.0); series2.add(3, 5.0); series2.add(4, 9.0); series2.add(5, 7.0); series2.add(6, 4.0); series2.add(7, 70.0); series2.add(8, 30.0); series2.add(9, 9.0); series2.add(10, 7.0); series2.add(11, 20.0); for (int i = 0; i < 11; i++) raw_x2[1][i] = series2.getY(i).toString(); XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(series1); dataset.addSeries(series2); return dataset; } else return super.createDataset(false); }
From source file:playground.dgrether.analysis.charts.DgAvgDeltaMoneyQuantilesChart.java
protected XYSeriesCollection createDatasets(String runId1, String runId2) { XYSeriesCollection ds = new XYSeriesCollection(); Tuple<XYSeries, List<String>> seriesLabels = this.createXYSeries("Mean " + '\u0394' + " Chf", this.ana, runId1, runId2);//from w w w . j av a2s. c o m ds.addSeries(seriesLabels.getFirst()); this.labelGenerator.setLabels(0, seriesLabels.getSecond()); return ds; }
From source file:jimaginary.machine.set.viewer.SetViewerTopComponent.java
private void createMidiChart(Set set) { if (set == null) { return;//from www .j av a2s. c om } XYSeries series = new XYSeries("Distrbution"); float setValues[] = set.getValues(); for (int i = 0; i < setValues.length; i++) { if ((int) setValues[i] != 0) { series.add(i, (int) setValues[i]); } } XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(series); // Generate the graph JFreeChart chart = ChartFactory.createScatterPlot(set.getName(), "Position", "Note", dataset, PlotOrientation.VERTICAL, // Plot Orientation true, // Show Legend true, // Use tooltips false // Configure chart to generate URLs? ); // add annotations if we have them XYPlot plot = chart.getXYPlot(); for (int i = 0; i < setValues.length; i++) { XYTextAnnotation an = new XYTextAnnotation(MidiCodec.noteValToString((int) setValues[i]), i, (int) setValues[i]); plot.addAnnotation(an); } if (chartPanel != null) { jPanelChart.remove(chartPanel); } chartPanel = new ChartPanel(chart); jPanelChart.setLayout(new java.awt.BorderLayout()); jPanelChart.add(chartPanel, BorderLayout.CENTER); jPanelChart.validate(); }
From source file:api3.transform.PlotWave.java
public void plot(double[][] signal, String name, long samplerate) { frame.setTitle(name);/*from ww w . j a v a 2s. com*/ XYSeries[] soundWave = new XYSeries[signal.length]; for (int j = 0; j < signal.length; ++j) { soundWave[j] = new XYSeries("sygnal" + j); for (int i = 0; i < signal[0].length; ++i) { double index = (samplerate == 0) ? i : 1000.0 * (double) i / (double) samplerate; soundWave[j].add(index, signal[j][i]); } } XYSeriesCollection dataset = new XYSeriesCollection(); for (int j = 0; j < signal.length; ++j) { dataset.addSeries(soundWave[j]); } JFreeChart chart = // (samplerate ==0 )? // ChartFactory.createXYBarChart( // name, // "prbka", // false, // "warto", // new XYBarDataset(dataset,0.0625), // PlotOrientation.VERTICAL, // true,false,false) // : ChartFactory.createXYLineChart(name, "prbka", "warto", dataset, PlotOrientation.VERTICAL, true, false, false); XYPlot plot = (XYPlot) chart.getPlot(); final NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis(); slider.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent event) { int value = slider.getValue(); double minimum = domainAxis.getRange().getLowerBound(); double maximum = domainAxis.getRange().getUpperBound(); double delta = (0.1f * (domainAxis.getRange().getLength())); if (value < lastValue) { // left minimum = minimum - delta; maximum = maximum - delta; } else { // right minimum = minimum + delta; maximum = maximum + delta; } DateRange range = new DateRange(minimum, maximum); domainAxis.setRange(range); lastValue = value; if (lastValue == slider.getMinimum() || lastValue == slider.getMaximum()) { slider.setValue(SLIDER_DEFAULT_VALUE); } } }); plot.addRangeMarker(new ValueMarker(0, Color.BLACK, new BasicStroke(1))); ChartPanel chartPanel = new ChartPanel(chart); Border border = BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4), BorderFactory.createEtchedBorder()); chartPanel.setBorder(border); chartPanel.addMouseWheelListener(addZoomWheel()); panel.add(chartPanel); JPanel dashboard = new JPanel(new BorderLayout()); dashboard.setBorder(BorderFactory.createEmptyBorder(0, 4, 4, 4)); dashboard.add(slider); panel.add(dashboard, BorderLayout.SOUTH); frame.getContentPane().add((JPanel) panel, BorderLayout.CENTER); frame.pack(); frame.setVisible(true); }
From source file:org.jfree.chart.demo.XYTickLabelDemo.java
/** * Creates the demo chart.// w ww .ja v a 2s . c o m * * @return The chart. */ private JFreeChart createChart() { // create some sample data final XYSeries series1 = new XYSeries("Something"); series1.add(0.0, 30.0); series1.add(1.0, 10.0); series1.add(2.0, 40.0); series1.add(3.0, 30.0); series1.add(4.0, 50.0); series1.add(5.0, 50.0); series1.add(6.0, 70.0); series1.add(7.0, 70.0); series1.add(8.0, 80.0); final XYSeriesCollection dataset1 = new XYSeriesCollection(); dataset1.addSeries(series1); final XYSeries series2 = new XYSeries("Something else"); series2.add(0.0, 5.0); series2.add(1.0, 4.0); series2.add(2.0, 1.0); series2.add(3.0, 5.0); series2.add(4.0, 0.0); final XYSeriesCollection dataset2 = new XYSeriesCollection(); dataset2.addSeries(series2); // create the chart final JFreeChart result = ChartFactory.createXYLineChart("Tick Label Demo", "Domain Axis 1", "Range Axis 1", dataset1, PlotOrientation.VERTICAL, false, true, false); result.setBackgroundPaint(Color.white); final XYPlot plot = result.getXYPlot(); plot.setOrientation(PlotOrientation.VERTICAL); plot.setBackgroundPaint(Color.lightGray); plot.setDomainGridlinePaint(Color.white); plot.setRangeGridlinePaint(Color.white); // plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 5.0, 5.0, 5.0, 5.0)); final StandardXYItemRenderer renderer = (StandardXYItemRenderer) plot.getRenderer(); renderer.setPaint(Color.black); // DOMAIN AXIS 2 final NumberAxis xAxis2 = new NumberAxis("Domain Axis 2"); xAxis2.setAutoRangeIncludesZero(false); plot.setDomainAxis(1, xAxis2); // RANGE AXIS 2 final DateAxis yAxis1 = new DateAxis("Range Axis 1"); plot.setRangeAxis(yAxis1); final DateAxis yAxis2 = new DateAxis("Range Axis 2"); plot.setRangeAxis(1, yAxis2); plot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset2); plot.mapDatasetToDomainAxis(1, 1); plot.mapDatasetToRangeAxis(1, 1); return result; }
From source file:turtlekit.murmuration.SpeedChecker.java
@Override public void setupFrame(JFrame frame) { XYSeriesCollection dataset = new XYSeriesCollection(); final ChartPanel chartPanel = ChartsUtil.createChartPanel(dataset, "Moyenne", null, null); chartPanel.setPreferredSize(new java.awt.Dimension(550, 250)); speed = new XYSeries("Speed"); dataset.addSeries(speed); frame.setContentPane(chartPanel);//from ww w.ja v a2s. c o m frame.setLocation(50, 0); // XYSeries s = dataset.getSeries("Total"); }