List of usage examples for org.jfree.data.category DefaultCategoryDataset DefaultCategoryDataset
public DefaultCategoryDataset()
From source file:playground.dgrether.analysis.charts.DgModalSplitDiffQuantilesChart.java
public DgModalSplitDiffQuantilesChart(DgAnalysisPopulation ana, String runid1, String runid2) { this.ana = ana; this.runId1 = runid1; this.runId2 = runid2; this.ana.calculateMinMaxIncome(); this.dataset = new DefaultCategoryDataset(); this.labelgenerator = new DgCategoryLabelGenerator(); this.calculateData(); }
From source file:org.sonar.plugins.core.charts.XradarChart.java
private CategoryDataset createDataset(ChartParameters params) { String[] labels = params.getValues(PARAM_LABELS, ","); String[] values = params.getValues(PARAM_VALUES, "|"); DefaultCategoryDataset set = new DefaultCategoryDataset(); for (int indexValues = 0; indexValues < values.length; indexValues++) { String[] fields = StringUtils.split(values[indexValues], ","); for (int i = 0; i < fields.length; i++) { set.addValue(Double.parseDouble(fields[i]), "" + indexValues, labels[i]); }//from w w w . j ava 2s .c o m } return set; }
From source file:org.jfree.chart.demo.EventFrequencyDemo.java
/** * Creates a new demo./* w ww . ja v a 2 s. c o m*/ * * @param title the frame title. */ public EventFrequencyDemo(final String title) { super(title); // create a dataset... final DefaultCategoryDataset dataset = new DefaultCategoryDataset(); // initialise the data... final Day d1 = new Day(12, SerialDate.JUNE, 2002); final Day d2 = new Day(14, SerialDate.JUNE, 2002); final Day d3 = new Day(15, SerialDate.JUNE, 2002); final Day d4 = new Day(10, SerialDate.JULY, 2002); final Day d5 = new Day(20, SerialDate.JULY, 2002); final Day d6 = new Day(22, SerialDate.AUGUST, 2002); dataset.setValue(new Long(d1.getMiddleMillisecond()), "Series 1", "Requirement 1"); dataset.setValue(new Long(d1.getMiddleMillisecond()), "Series 1", "Requirement 2"); dataset.setValue(new Long(d2.getMiddleMillisecond()), "Series 1", "Requirement 3"); dataset.setValue(new Long(d3.getMiddleMillisecond()), "Series 2", "Requirement 1"); dataset.setValue(new Long(d4.getMiddleMillisecond()), "Series 2", "Requirement 3"); dataset.setValue(new Long(d5.getMiddleMillisecond()), "Series 3", "Requirement 2"); dataset.setValue(new Long(d6.getMiddleMillisecond()), "Series 1", "Requirement 4"); // create the chart... final JFreeChart chart = ChartFactory.createBarChart("Event Frequency Demo", // title "Category", // domain axis label "Value", // range axis label dataset, // dataset PlotOrientation.HORIZONTAL, // orientation true, // include legend true, // tooltips false // URLs ); // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART... // set the background color for the chart... chart.setBackgroundPaint(new Color(0xFF, 0xFF, 0xCC)); // final StandardLegend legend = (StandardLegend) chart.getLegend(); // legend.setDisplaySeriesShapes(true); // get a reference to the plot for further customisation... final CategoryPlot plot = chart.getCategoryPlot(); // plot.getDomainAxis().setMaxCategoryLabelWidthRatio(10.0f); plot.setRangeAxis(new DateAxis("Date")); final CategoryToolTipGenerator toolTipGenerator = new StandardCategoryToolTipGenerator("", DateFormat.getDateInstance()); // final CategoryItemRenderer renderer = new LineAndShapeRenderer(LineAndShapeRenderer.SHAPES); // renderer.setToolTipGenerator(toolTipGenerator); // plot.setRenderer(renderer); // **************************************************************************** // * 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. * // **************************************************************************** // OPTIONAL CUSTOMISATION COMPLETED. // add the chart to a panel... final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 270)); setContentPane(chartPanel); }
From source file:org.miloss.fgsms.services.rs.impl.reports.broker.ConsumersByQueueOrTopic.java
@Override public void generateReport(OutputStreamWriter data, List<String> urls, String path, List<String> files, TimeRange range, String currentuser, SecurityWrapper classification, WebServiceContext ctx) throws IOException { Connection con = Utility.getPerformanceDBConnection(); try {/*from w w w.j a va2 s . c o m*/ PreparedStatement cmd = null; ResultSet rs = null; DefaultCategoryDataset set = new DefaultCategoryDataset(); JFreeChart chart = null; data.append("<hr /><h2>").append(GetDisplayName()).append("</h2>"); data.append( "This represents the average number of consumers for all channels (topics/queues/etc) on a specific message broker.<br />"); data.append( "<table class=\"table table-hover\"><tr><th>URI</th><th>Channel</th><th>Average Consumer Count</th></tr>"); TimeSeriesCollection col = new TimeSeriesCollection(); for (int i = 0; i < urls.size(); i++) { if (!isPolicyTypeOf(urls.get(i), PolicyType.STATISTICAL)) { continue; } //https://github.com/mil-oss/fgsms/issues/112 if (!UserIdentityUtil.hasReadAccess(currentuser, "getReport", urls.get(i), classification, ctx)) { continue; } String url = Utility.encodeHTML(BaseReportGenerator.getPolicyDisplayName(urls.get(i))); try { data.append("<tr><td>").append(Utility.encodeHTML(urls.get(i))).append("</td>"); double average = 0; try { cmd = con.prepareStatement( "select avg(activeconsumercount), host, canonicalname from brokerhistory where host=? and utcdatetime > ? and utcdatetime < ? group by canonicalname, host;"); cmd.setString(1, urls.get(i)); cmd.setLong(2, range.getStart().getTimeInMillis()); cmd.setLong(3, range.getEnd().getTimeInMillis()); rs = cmd.executeQuery(); if (rs.next()) { average = rs.getDouble(1); } } catch (Exception ex) { log.log(Level.WARN, null, ex); } finally { DBUtils.safeClose(rs); DBUtils.safeClose(cmd); } data.append("<td>").append(average + "").append("</td>"); try { //ok now get the raw data.... cmd = con.prepareStatement( "select utcdatetime,activeconsumercount, canonicalname from brokerhistory where host=? and utcdatetime > ? and utcdatetime < ?;"); cmd.setString(1, urls.get(i)); cmd.setLong(2, range.getStart().getTimeInMillis()); cmd.setLong(3, range.getEnd().getTimeInMillis()); rs = cmd.executeQuery(); TimeSeries ts = new TimeSeries(urls.get(i), Millisecond.class); while (rs.next()) { //set.addValue(rs.getLong(1), urls.get(i), rs.getString("canonicalname")); GregorianCalendar gcal = new GregorianCalendar(); gcal.setTimeInMillis(rs.getLong(1)); Millisecond m = new Millisecond(gcal.getTime()); ts.addOrUpdate(m, rs.getLong(2)); } col.addSeries(ts); } catch (Exception ex) { log.log(Level.WARN, null, ex); } finally { DBUtils.safeClose(rs); DBUtils.safeClose(cmd); } } catch (Exception ex) { log.log(Level.ERROR, "Error opening or querying the database.", ex); } } chart = org.jfree.chart.ChartFactory.createTimeSeriesChart(GetDisplayName(), "Timestamp", "Count", col, true, false, false); data.append("</table>"); try { ChartUtilities.saveChartAsPNG(new File( path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png"), chart, 1500, 400); data.append("<img src=\"image_").append(this.getClass().getSimpleName()).append(".png\">"); files.add(path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png"); } catch (IOException ex) { log.log(Level.ERROR, "Error saving chart image for request", ex); } } catch (Exception ex) { log.log(Level.ERROR, null, ex); } finally { DBUtils.safeClose(con); } }
From source file:org.matsim.pt.counts.obsolete.PtBiasErrorGraph.java
@Override @Deprecated // use standard counts package public JFreeChart createChart(final int nbr) { DefaultCategoryDataset dataset0 = new DefaultCategoryDataset(); DefaultCategoryDataset dataset1 = new DefaultCategoryDataset(); this.errorStats = new ComparisonErrorStatsCalculator(this.ccl_); double[] meanRelError = errorStats.getMeanRelError(); // double[] meanAbsError = errorStats.getMeanAbsError(); double[] meanAbsBias = errorStats.getMeanAbsBias(); for (int h = 0; h < 24; h++) { dataset0.addValue(meanRelError[h], "Mean rel error", Integer.toString(h + 1)); // dataset1.addValue(meanAbsError[h], "Mean abs error", // Integer.toString(h + 1)); dataset1.addValue(meanAbsBias[h], "Mean abs bias", Integer.toString(h + 1)); }/*from w ww .j av a 2s .c o m*/ this.chart_ = ChartFactory.createLineChart(this.chartTitle, "Hour", "Mean rel error [%]", dataset0, PlotOrientation.VERTICAL, true, // legend? true, // tooltips? false // URLs? ); CategoryPlot plot = this.chart_.getCategoryPlot(); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset1); plot.mapDatasetToRangeAxis(1, 1); final LineAndShapeRenderer renderer = new LineAndShapeRenderer(); renderer.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); plot.setRenderer(0, renderer); final CategoryAxis axis1 = new CategoryAxis("Hour"); axis1.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 7)); plot.setDomainAxis(axis1); // final ValueAxis axis2 = new // NumberAxis("Mean abs {bias, error} [veh/h]"); final ValueAxis axis2 = new NumberAxis("Mean abs bias [veh/h]"); plot.setRangeAxis(1, axis2); final ValueAxis axis3 = plot.getRangeAxis(0); axis3.setRange(0.0, 100.0); final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer(); renderer2.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); renderer2.setSeriesToolTipGenerator(1, new StandardCategoryToolTipGenerator()); // renderer2.setSeriesPaint(0, Color.black); plot.setRenderer(1, renderer2); plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE); return this.chart_; }
From source file:algo.PlotBar.java
private CategoryDataset createDataset() throws FileNotFoundException, IOException { final String BinarySearchMergeSort = "Binary"; final String InterpolationSearchMerge = "Interpolation"; final String NormalMergeSort = "Normal"; final String TanSort = "TAN"; final DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(fileReadTime("time_binary_search_merge_sort.txt") * 1000, BinarySearchMergeSort, BinarySearchMergeSort);/*from www . java 2s. c o m*/ dataset.addValue(fileReadTime("time_interpolation_search_merge_sort.txt") * 1000, InterpolationSearchMerge, InterpolationSearchMerge); dataset.addValue(fileReadTime("time_normal_merge_sort.txt") * 1000, NormalMergeSort, NormalMergeSort); dataset.addValue(fileReadTime("time_tan_sor2.txt") * 1000, TanSort, TanSort); return dataset; }
From source file:org.miloss.fgsms.services.rs.impl.reports.ws.ThroughputByServiceByMethod.java
/** * {@inheritDoc}/* w w w. j ava 2s . co m*/ */ @Override public void generateReport(OutputStreamWriter data, List<String> urls, String path, List<String> files, TimeRange range, String currentuser, SecurityWrapper classification, WebServiceContext ctx) throws IOException { double d = range.getEnd().getTimeInMillis() - range.getStart().getTimeInMillis(); double day = d / 86400000; double hours = d / 3600000; double min = d / 60000; double sec = d / 1000; Connection con = Utility.getPerformanceDBConnection(); try { PreparedStatement cmd = null; ResultSet rs = null; DefaultCategoryDataset set = new DefaultCategoryDataset(); JFreeChart chart = null; data.append("<hr /><h2>").append(GetDisplayName()).append("</h2>"); data.append(GetHtmlFormattedHelp() + "<br />"); data.append( "<table class=\"table table-hover\"><tr><th>URL</th><th>Method</th><th>Invocations</th><th>Msg/Day</th><th>Msg/Hour</th><th>Msg/Min</th><th>Msg/Sec</th></tr>"); for (int i = 0; i < urls.size(); i++) { if (!isPolicyTypeOf(urls.get(i), PolicyType.TRANSACTIONAL)) { continue; } //https://github.com/mil-oss/fgsms/issues/112 if (!UserIdentityUtil.hasReadAccess(currentuser, "getReport", urls.get(i), classification, ctx)) { continue; } String url = Utility.encodeHTML(BaseReportGenerator.getPolicyDisplayName(urls.get(i))); try { List<String> actions = getSoapActions(urls.get(i), con); for (int k = 0; k < actions.size(); k++) { long count = 0; try { cmd = con.prepareStatement( "select count(*) from RawData where URI=? and soapaction=? and " + "(UTCdatetime > ?) and (UTCdatetime < ?) ;"); cmd.setString(1, urls.get(i)); cmd.setString(2, actions.get(k)); cmd.setLong(3, range.getStart().getTimeInMillis()); cmd.setLong(4, range.getEnd().getTimeInMillis()); rs = cmd.executeQuery(); try { if (rs.next()) { count = rs.getLong(1); } } catch (Exception ex) { log.log(Level.DEBUG, null, ex); } } catch (Exception ex) { log.log(Level.WARN, null, ex); } finally { DBUtils.safeClose(rs); DBUtils.safeClose(cmd); } data.append("<tr><td>").append(url).append("</td><td>") .append(Utility.encodeHTML(actions.get(k))).append("</td><td>"); data.append(count + ""); data.append("</td><td>").append(format.format((double) ((double) count / day))) .append("</td><td>").append(format.format((double) ((double) count / hours))) .append("</td><td>").append(format.format((double) ((double) count / min))) .append("</td><td>").append(format.format((double) ((double) count / sec))) .append("</td></tr>"); if (count > 0) { set.addValue((double) ((double) count / day), actions.get(k), url); } } } catch (Exception ex) { log.log(Level.ERROR, "Error opening or querying the database.", ex); } } chart = org.jfree.chart.ChartFactory.createBarChart(GetDisplayName(), "Service URL", "", set, PlotOrientation.HORIZONTAL, true, false, false); data.append("</table>"); try { ChartUtilities.saveChartAsPNG(new File( path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png"), chart, 1500, pixelHeightCalc(set.getRowCount())); } catch (IOException ex) { log.log(Level.ERROR, "Error saving chart image for request", ex); } data.append("<img src=\"image_").append(this.getClass().getSimpleName()).append(".png\">"); files.add(path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png"); } catch (Exception ex) { log.log(Level.ERROR, null, ex); } finally { DBUtils.safeClose(con); } }
From source file:org.sonar.server.charts.deprecated.BarChart.java
protected void configureCategoryDataset() { dataset = new DefaultCategoryDataset(); }
From source file:org.jfree.chart.demo.MultiplePieChartDemo3.java
/** * Creates a sample dataset./*from www .ja v a2 s . co m*/ * * @return A sample dataset. */ private CategoryDataset createDataset() { final DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(5.6, "Row 0", "Column 0"); dataset.addValue(5.6, "Row 0", "Column 1"); dataset.addValue(5.6, "Row 0", "Column 2"); dataset.addValue(5.6, "Row 0", "Column 3"); dataset.addValue(5.6, "Row 0", "Column 4"); dataset.addValue(5.6, "Row 1", "Column 0"); dataset.addValue(5.6, "Row 1", "Column 1"); dataset.addValue(5.6, "Row 1", "Column 2"); dataset.addValue(5.6, "Row 1", "Column 3"); dataset.addValue(5.6, "Row 1", "Column 4"); dataset.addValue(5.6, "Row 2", "Column 0"); dataset.addValue(5.6, "Row 2", "Column 1"); dataset.addValue(5.6, "Row 2", "Column 2"); dataset.addValue(5.6, "Row 2", "Column 3"); dataset.addValue(5.6, "Row 2", "Column 4"); dataset.addValue(5.6, "Row 3", "Column 0"); dataset.addValue(5.6, "Row 3", "Column 1"); dataset.addValue(5.6, "Row 3", "Column 2"); dataset.addValue(5.6, "Row 3", "Column 3"); dataset.addValue(5.6, "Row 3", "Column 4"); dataset.addValue(5.6, "Row 4", "Column 0"); dataset.addValue(5.6, "Row 4", "Column 1"); dataset.addValue(5.6, "Row 4", "Column 2"); dataset.addValue(5.6, "Row 4", "Column 3"); dataset.addValue(5.6, "Row 4", "Column 4"); return dataset; }
From source file:ui.results.ResultChartPanel.java
/** * Construct new Result panel/*from w ww. j a v a2 s . com*/ */ public ResultChartPanel() { // The charting objects dataset = new DefaultStatisticalCategoryDataset(); upper = new DefaultCategoryDataset(); lower = new DefaultCategoryDataset(); // The Renderers lineRenderer0 = new LineAndShapeRenderer(); lineRenderer1 = new LineAndShapeRenderer(); lineRenderer2 = new LineAndShapeRenderer(); lineRenderer0.setSeriesPaint(0, lowerColor); lineRenderer1.setSeriesPaint(0, mspColor); lineRenderer2.setSeriesPaint(0, upperColor); lineRenderer0.setSeriesShapesVisible(0, false); lineRenderer1.setSeriesShapesVisible(0, false); lineRenderer2.setSeriesShapesVisible(0, false); barRenderer = new StatisticalBarRenderer(); barRenderer.setSeriesPaint(0, mspColor); // The Plot: begin as a line plot CategoryPlot plot = new CategoryPlot(); plot.setDomainAxis(new CategoryAxis("Datasets")); plot.setRangeAxis(new NumberAxis("MSP")); plot.setRenderer(0, lineRenderer0); plot.setRenderer(1, lineRenderer1); plot.setRenderer(2, lineRenderer2); plot.setDataset(0, lower); plot.setDataset(1, dataset); plot.setDataset(2, upper); // Adding the new plot chart = new JFreeChart(plot); panel = new ChartPanel(chart); // Listening to changes //dataset.addChangeListener(chart.getPlot()); chart.getPlot().addChangeListener(chart); chart.addChangeListener(panel); ((CategoryPlot) chart.getPlot()).getRangeAxis().setAutoRange(true); // Choice panel: choicing between line and bar chart JPanel choicePanel = createChoicePanel(); // Doing the interface setLayout(new BorderLayout()); add(choicePanel, BorderLayout.NORTH); add(panel, BorderLayout.CENTER); setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "Chart")); // size stuff //setPreferredSize(new Dimension(500, 400)); }