List of usage examples for org.jfree.data.time TimeTableXYDataset getSeriesKey
@Override public Comparable getSeriesKey(int series)
From source file:org.xwiki.rendering.internal.macro.chart.source.table.TableTimeTableXYBuilderTest.java
@Test public void testBuildTimeTableXY() throws Exception { String content = "| Date | column 2 | column 3 | column 4\n" + "| 2012-01-01 10:30:10 | 12 | 13 | 14 \n" + "| 2012-01-01 10:30:20 | 22 | 23 | 24 \n"; setUpContentExpectation(content);/*w ww . j a v a2 s . co m*/ getDataSource().buildDataset(content, map("type", "xy_line_and_shape", "dataset", "timetable_xy", "range", "A2-D3", "locale", "en_US", "date_format", "yyyy-MM-dd kk:mm:ss", "domain_axis_type", "date"), null); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss", new Locale("en")); ChartModel chartModel = getDataSource().getChartModel(); Assert.assertTrue(chartModel.getDataset() instanceof TimeTableXYDataset); Assert.assertTrue(chartModel.getAxis(0) instanceof DateAxis); Assert.assertTrue(chartModel.getAxis(1) instanceof ValueAxis); TimeTableXYDataset dataset = (TimeTableXYDataset) chartModel.getDataset(); Assert.assertTrue(dataset.getSeriesCount() == 3); Assert.assertTrue(dataset.getSeriesKey(0).equals(" column 2 ")); Assert.assertTrue(dataset.getSeriesKey(1).equals(" column 3 ")); Assert.assertTrue(dataset.getSeriesKey(2).equals(" column 4")); Assert.assertTrue(dataset.getTimePeriod(0).getStart().equals(new Date(0))); Assert.assertTrue(dataset.getTimePeriod(0).getEnd().equals(dateFormat.parse("2012-01-01 10:30:10"))); Assert.assertTrue(dataset.getTimePeriod(1).getStart().equals(dateFormat.parse("2012-01-01 10:30:10"))); Assert.assertTrue(dataset.getTimePeriod(1).getEnd().equals(dateFormat.parse("2012-01-01 10:30:20"))); }
From source file:net.atomique.ksar.graph.Graph.java
private JFreeChart makegraph(LocalDateTime start, LocalDateTime end) { long begingenerate = System.currentTimeMillis(); CombinedDomainXYPlot plot = new CombinedDomainXYPlot(axisofdate); // do the stacked stuff for (PlotStackConfig tmp : graphconfig.getStacklist().values()) { if (tmp == null) { continue; }//from ww w . j ava 2 s. c om TimeTableXYDataset tmp2 = StackListbyName.get(tmp.getTitle()); if (tmp2 != null) { StackedXYAreaRenderer2 renderer = new StackedXYAreaRenderer2(); NumberAxis graphaxistitle = tmp.getAxis(); XYPlot temp_plot = new XYPlot(tmp2, axisofdate, graphaxistitle, renderer); for (int i = 0; i < tmp2.getSeriesCount(); i++) { Color color = GlobalOptions.getDataColor(tmp2.getSeriesKey(i).toString()); if (color != null) { renderer.setSeriesPaint(i, color); renderer.setDefaultStroke(new BasicStroke(1.0F)); } } plot.add(temp_plot, tmp.getSize()); } } // do the line stuff for (PlotStackConfig tmp : graphconfig.getPlotlist().values()) { XYItemRenderer renderer = new StandardXYItemRenderer(); ArrayList<String> t = new ArrayList<>(); String[] s = tmp.getHeaderStr().split("\\s+"); Collections.addAll(t, s); XYDataset c = create_collection(t); NumberAxis graphaxistitle = tmp.getAxis(); XYPlot tmpplot = new XYPlot(c, axisofdate, graphaxistitle, renderer); for (int i = 0; i < s.length; i++) { Color color = GlobalOptions.getDataColor(s[i]); if (color != null) { renderer.setSeriesPaint(i, color); renderer.setDefaultStroke(new BasicStroke(1.0F)); } } plot.add(tmpplot, tmp.getSize()); } if (plot.getSubplots().isEmpty()) { return null; } if (start != null && end != null) { Second g_start = convertLocalDateTimeToSecond(start); Second g_end = convertLocalDateTimeToSecond(end); axisofdate.setRange(g_start.getStart(), g_end.getEnd()); } plot.setOrientation(PlotOrientation.VERTICAL); JFreeChart mychart = new JFreeChart(graphtitle, Config.getDEFAULT_FONT(), plot, true); long endgenerate = System.currentTimeMillis(); mychart.setBackgroundPaint(Color.white); if (GlobalOptions.isDodebug()) { log.debug("graph generation: {} ms", (endgenerate - begingenerate)); } return mychart; }
From source file:com.sonyericsson.jenkins.plugins.bfa.graphs.TimeSeriesChart.java
@Override protected JFreeChart createGraph() { TimeTableXYDataset dataset = createDataset(); ValueAxis xAxis = new DateAxis(); xAxis.setLowerMargin(0.0);/*from w w w . j ava 2 s . c om*/ xAxis.setUpperMargin(0.0); Calendar lowerBound = getLowerGraphBound(); xAxis.setRange(lowerBound.getTimeInMillis(), Calendar.getInstance().getTimeInMillis()); NumberAxis yAxis = new NumberAxis(Y_AXIS_LABEL); yAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); StackedXYBarRenderer renderer = new StackedXYBarRenderer(); renderer.setBaseToolTipGenerator(new XYToolTipGenerator() { @Override public String generateToolTip(XYDataset dataset, int series, int item) { String seriesKey = dataset.getSeriesKey(series).toString(); StringBuilder sb = new StringBuilder(); if (seriesKey.equals(GRAPH_OTHERS)) { long timeInMillis = dataset.getX(series, item).longValue(); Date time = new Date(timeInMillis); TimePeriod period = null; if (intervalSize == Calendar.DATE) { period = new Day(time); } else if (intervalSize == Calendar.HOUR_OF_DAY) { period = new Hour(time); } else if (intervalSize == Calendar.MONTH) { period = new Month(time); } List<FailureCauseTimeInterval> excludedDataList = excludedDataForPeriod.get(period); if (excludedDataList != null) { Collections.sort(excludedDataList, new Comparator<FailureCauseTimeInterval>() { @Override public int compare(FailureCauseTimeInterval o1, FailureCauseTimeInterval o2) { return o2.getNumber() - o1.getNumber(); } }); for (FailureCauseTimeInterval excludedData : excludedDataList) { sb.append(excludedData).append(" \n"); } } } else { int number = dataset.getY(series, item).intValue(); sb.append(seriesKey).append(": ").append(number); } return sb.toString(); } }); XYPlot plot = new XYPlot(dataset, xAxis, yAxis, renderer); plot.setOrientation(PlotOrientation.VERTICAL); plot.setRangeAxis(yAxis); JFreeChart chart = new JFreeChart(graphTitle, JFreeChart.DEFAULT_TITLE_FONT, plot, true); return chart; }