List of usage examples for org.jfree.data.gantt TaskSeriesCollection add
public void add(TaskSeries series)
From source file:org.matsim.contrib.dvrp.util.chart.ScheduleChartUtils.java
private static <T extends Task> TaskSeriesCollection createScheduleDataset(List<? extends Vehicle> vehicles, DescriptionCreator<T> descriptionCreator) { TaskSeriesCollection collection = new TaskSeriesCollection(); for (Vehicle v : vehicles) { @SuppressWarnings("unchecked") Schedule<T> schedule = (Schedule<T>) v.getSchedule(); final TaskSeries scheduleTaskSeries = new TaskSeries(v.getId().toString()); if (schedule.getStatus() == ScheduleStatus.UNPLANNED) { collection.add(scheduleTaskSeries); continue; }//from www. jav a2 s. c o m List<T> tasks = schedule.getTasks(); for (T t : tasks) { String description = descriptionCreator.create(t); TimePeriod duration = new SimpleTimePeriod(// new Date((int) Math.floor(t.getBeginTime() * 1000)), // new Date((int) Math.ceil(t.getEndTime() * 1000))); scheduleTaskSeries.add(new ChartTask<T>(description, duration, t)); } collection.add(scheduleTaskSeries); } return collection; }
From source file:lu.lippmann.cdb.common.gui.ts.TimeSeriesChartUtil.java
public static ChartPanel buildChartPanelForNominalAttribute(final Instances ds, final Attribute attr, final int dateIdx) { final TaskSeriesCollection localTaskSeriesCollection = new TaskSeriesCollection(); final java.util.List<String> names = new ArrayList<String>(); final Set<String> present = WekaDataStatsUtil.getPresentValuesForNominalAttribute(ds, attr.index()); for (final String pr : present) { names.add(pr);/*from ww w . j av a2 s. c om*/ localTaskSeriesCollection.add(new TaskSeries(pr)); } final Calendar cal = Calendar.getInstance(); try { for (final double[] dd : WekaTimeSeriesUtil.split(ds, attr.index())) { cal.setTimeInMillis((long) dd[0]); final Date start = cal.getTime(); cal.setTimeInMillis((long) dd[1]); final Date end = cal.getTime(); final String sd = ds.instance((int) dd[2]).stringValue(attr); localTaskSeriesCollection.getSeries(sd).add(new Task("T", start, end)); } } catch (Exception e) { e.printStackTrace(); } final XYTaskDataset localXYTaskDataset = new XYTaskDataset(localTaskSeriesCollection); localXYTaskDataset.setTransposed(true); localXYTaskDataset.setSeriesWidth(0.6D); final DateAxis localDateAxis = new DateAxis(DATE_TIME_LABEL); final SymbolAxis localSymbolAxis = new SymbolAxis("", names.toArray(new String[names.size()])); localSymbolAxis.setGridBandsVisible(false); final XYBarRenderer localXYBarRenderer = new XYBarRenderer(); localXYBarRenderer.setUseYInterval(true); localXYBarRenderer.setShadowVisible(false); final XYPlot localXYPlot = new XYPlot(localXYTaskDataset, localDateAxis, localSymbolAxis, localXYBarRenderer); final CombinedDomainXYPlot localCombinedDomainXYPlot = new CombinedDomainXYPlot( new DateAxis(DATE_TIME_LABEL)); localCombinedDomainXYPlot.add(localXYPlot); final JFreeChart localJFreeChart = new JFreeChart("", localCombinedDomainXYPlot); localJFreeChart.setBackgroundPaint(Color.white); final ChartPanel cp = new ChartPanel(localJFreeChart, true); cp.setBorder(new TitledBorder(attr.name())); return cp; }
From source file:pisco.batch.visu.BatchingChartFactory.java
public static XYDataset createLatenessDataset(Batch[] batches) { final TaskSeriesCollection coll = new TaskSeriesCollection(); for (int i = 0; i < batches.length; i++) { TaskSeries series = new TaskSeries(String.valueOf(i)); final int dd = batches[i].getDueDate(); final int compl = batches[i].getCompletionTime(); TimePeriod p = dd < compl ? new SimpleTimePeriod(dd, compl) : new SimpleTimePeriod(compl, dd); series.add(new Task("B" + i, p)); coll.add(series); }// ww w. j a v a 2 s.c o m final XYTaskDataset dataset = new XYTaskDataset(coll); dataset.setTransposed(true); return dataset; }
From source file:osproject.Drawer.java
private static TaskSeriesCollection createTasks() { TaskSeriesCollection localTaskSeriesCollection = new TaskSeriesCollection(); drawingInstructions.sortOnId();// w w w. j a v a 2 s. c om int prevId = -1; TaskSeries taskSeries = null; String label = null; int startMinute = new Minute().getMinute(); int startHour = new Hour().getHour(); int startSecond = new Second().getSecond(); for (int i = 0; i < drawingInstructions.count(); i++) { if (drawingInstructions.getInstruction(i).from == drawingInstructions.getInstruction(i).to) continue; if (prevId != drawingInstructions.getInstruction(i).processId) { prevId = drawingInstructions.getInstruction(i).processId; if (taskSeries != null) { localTaskSeriesCollection.add(taskSeries); } label = arr[drawingInstructions.getInstruction(i).processId]; taskSeries = new TaskSeries(label); } int curSecond = 0, curMinute = startMinute, curHour = startHour; if (startSecond + drawingInstructions.getInstruction(i).from > 59) { curSecond = startSecond + drawingInstructions.getInstruction(i).from; curSecond %= 60; curMinute++; if (curMinute > 59) { curMinute %= 60; curHour++; } } else { curSecond = startSecond + drawingInstructions.getInstruction(i).from; } int toSecond = 0, toMinute = startMinute, toHour = startHour; if (startSecond + drawingInstructions.getInstruction(i).to > 59) { toSecond = startSecond + drawingInstructions.getInstruction(i).to; toSecond %= 60; toMinute++; if (toMinute > 59) { toMinute %= 60; toHour++; } } else { toSecond = startSecond + drawingInstructions.getInstruction(i).to; } Date from = new Second(curSecond, new Minute(curMinute, new Hour(curHour, new Day()))).getStart(); Date to = new Second(toSecond, new Minute(toMinute, new Hour(toHour, new Day()))).getEnd(); taskSeries.add(new Task(label, from, to)); } localTaskSeriesCollection.add(taskSeries); return localTaskSeriesCollection; }
From source file:org.jfree.chart.demo.XYTaskDatasetDemo1.java
private static TaskSeriesCollection createTasks() { TaskSeriesCollection taskseriescollection = new TaskSeriesCollection(); TaskSeries taskseries = new TaskSeries("Team A"); taskseries.add(new Task("T1a", new Hour(11, new Day()))); taskseries.add(new Task("T1b", new Hour(14, new Day()))); taskseries.add(new Task("T1c", new Hour(16, new Day()))); TaskSeries taskseries1 = new TaskSeries("Team B"); taskseries1.add(new Task("T2a", new Hour(13, new Day()))); taskseries1.add(new Task("T2b", new Hour(19, new Day()))); taskseries1.add(new Task("T2c", new Hour(21, new Day()))); TaskSeries taskseries2 = new TaskSeries("Team C"); taskseries2.add(new Task("T3a", new Hour(13, new Day()))); taskseries2.add(new Task("T3b", new Hour(19, new Day()))); taskseries2.add(new Task("T3c", new Hour(21, new Day()))); TaskSeries taskseries3 = new TaskSeries("Team D"); taskseries3.add(new Task("T4a", new Day())); taskseriescollection.add(taskseries); taskseriescollection.add(taskseries1); taskseriescollection.add(taskseries2); taskseriescollection.add(taskseries3); return taskseriescollection; }
From source file:org.jfree.chart.demo.XYTaskDatasetDemo2.java
private static TaskSeriesCollection createTasks() { TaskSeriesCollection taskseriescollection = new TaskSeriesCollection(); TaskSeries taskseries = new TaskSeries("Team A"); taskseries.add(new Task("T1a", new Hour(11, new Day()))); taskseries.add(new Task("T1b", new Hour(14, new Day()))); taskseries.add(new Task("T1c", new Hour(16, new Day()))); TaskSeries taskseries1 = new TaskSeries("Team B"); taskseries1.add(new Task("T2a", new Hour(13, new Day()))); taskseries1.add(new Task("T2b", new Hour(19, new Day()))); taskseries1.add(new Task("T2c", new Hour(21, new Day()))); TaskSeries taskseries2 = new TaskSeries("Team C"); taskseries2.add(new Task("T3a", new Hour(13, new Day()))); taskseries2.add(new Task("T3b", new Hour(19, new Day()))); taskseries2.add(new Task("T3c", new Hour(21, new Day()))); TaskSeries taskseries3 = new TaskSeries("Team D"); taskseries3.add(new Task("T4a", new Day())); TaskSeries taskseries4 = new TaskSeries("Team E"); taskseries4.add(new Task("T5a", new Day())); taskseriescollection.add(taskseries); taskseriescollection.add(taskseries1); taskseriescollection.add(taskseries2); taskseriescollection.add(taskseries3); taskseriescollection.add(taskseries4); return taskseriescollection; }
From source file:org.endeavour.mgmt.controller.servlet.CreateProjectPlan.java
private void createReportPage(Document aDocument, TaskSeries aTaskSeries, Date aStartDate, Date aEndDate, String aDescription) throws Exception { TaskSeriesCollection theDataset = new TaskSeriesCollection(); theDataset.add(aTaskSeries); DateAxis theDateRange = new DateAxis(TIMELINE); theDateRange.setMinimumDate(aStartDate); theDateRange.setMaximumDate(aEndDate); JFreeChart theChart = ChartFactory.createGanttChart(aDescription, ARTIFACTS, null, theDataset, true, false, false);//from w w w.j a v a 2 s . c o m CategoryPlot theCategoryPlot = theChart.getCategoryPlot(); theCategoryPlot.setRangeAxis(theDateRange); BufferedImage theChartImage = theChart.createBufferedImage(780, 520); ByteArrayOutputStream theOutputStream = new ByteArrayOutputStream(); ImageIO.write(theChartImage, "png", theOutputStream); Image theDocumentImage = Image.getInstance(theOutputStream.toByteArray()); aDocument.add(theDocumentImage); }
From source file:org.jfree.data.gantt.SlidingGanttCategoryDatasetTest.java
/** * Serialize an instance, restore it, and check for equality. *//*from www . j a v a2 s. com*/ @Test public void testSerialization() { TaskSeries s1 = new TaskSeries("Series"); s1.add(new Task("Task 1", new Date(0L), new Date(1L))); TaskSeriesCollection u1 = new TaskSeriesCollection(); u1.add(s1); SlidingGanttCategoryDataset d1 = new SlidingGanttCategoryDataset(u1, 0, 5); SlidingGanttCategoryDataset d2 = (SlidingGanttCategoryDataset) TestUtilities.serialised(d1); assertEquals(d1, d2); // basic check for independence s1.add(new Task("Task 2", new Date(10L), new Date(11L))); assertFalse(d1.equals(d2)); TaskSeriesCollection u2 = (TaskSeriesCollection) d2.getUnderlyingDataset(); TaskSeries s2 = u2.getSeries("Series"); s2.add(new Task("Task 2", new Date(10L), new Date(11L))); assertTrue(d1.equals(d2)); }
From source file:org.jfree.data.gantt.XYTaskDatasetTest.java
/** * Serialize an instance, restore it, and check for equality. */// w w w.ja v a 2 s. c o m @Test public void testSerialization() { TaskSeries s1 = new TaskSeries("Series"); s1.add(new Task("Task 1", new Date(0L), new Date(1L))); TaskSeriesCollection u1 = new TaskSeriesCollection(); u1.add(s1); XYTaskDataset d1 = new XYTaskDataset(u1); XYTaskDataset d2 = (XYTaskDataset) TestUtilities.serialised(d1); assertEquals(d1, d2); // basic check for independence s1.add(new Task("Task 2", new Date(10L), new Date(11L))); assertFalse(d1.equals(d2)); TaskSeriesCollection u2 = d2.getTasks(); TaskSeries s2 = u2.getSeries("Series"); s2.add(new Task("Task 2", new Date(10L), new Date(11L))); assertTrue(d1.equals(d2)); }
From source file:org.jfree.data.gantt.SlidingGanttCategoryDatasetTest.java
/** * Confirm that cloning works./* w w w . ja v a 2 s. c o m*/ */ @Test public void testCloning() throws CloneNotSupportedException { TaskSeries s1 = new TaskSeries("Series"); s1.add(new Task("Task 1", new Date(0L), new Date(1L))); TaskSeriesCollection u1 = new TaskSeriesCollection(); u1.add(s1); SlidingGanttCategoryDataset d1 = new SlidingGanttCategoryDataset(u1, 0, 5); SlidingGanttCategoryDataset d2 = (SlidingGanttCategoryDataset) d1.clone(); assertTrue(d1 != d2); assertTrue(d1.getClass() == d2.getClass()); assertTrue(d1.equals(d2)); // basic check for independence s1.add(new Task("Task 2", new Date(10L), new Date(11L))); assertFalse(d1.equals(d2)); TaskSeriesCollection u2 = (TaskSeriesCollection) d2.getUnderlyingDataset(); TaskSeries s2 = u2.getSeries("Series"); s2.add(new Task("Task 2", new Date(10L), new Date(11L))); assertTrue(d1.equals(d2)); }