List of usage examples for org.jfree.data.gantt XYTaskDataset XYTaskDataset
public XYTaskDataset(TaskSeriesCollection tasks)
From source file:org.jfree.chart.demo.XYTaskDatasetDemo1.java
private static IntervalXYDataset createDataset() { return new XYTaskDataset(createTasks()); }
From source file:org.matsim.contrib.dvrp.util.chart.ScheduleChartUtils.java
public static <T extends Task> JFreeChart chartSchedule(List<? extends Vehicle> vehicles, DescriptionCreator<T> descriptionCreator, PaintSelector<T> paintSelector) { // data//from w w w . j a v a2 s .co m TaskSeriesCollection dataset = createScheduleDataset(vehicles, descriptionCreator); XYTaskDataset xyTaskDataset = new XYTaskDataset(dataset); // chart JFreeChart chart = ChartFactory.createXYBarChart("Schedules", "Time", false, "Vehicles", xyTaskDataset, PlotOrientation.HORIZONTAL, false, true, false); XYPlot plot = (XYPlot) chart.getPlot(); // Y axis String[] series = new String[vehicles.size()]; for (int i = 0; i < series.length; i++) { series[i] = vehicles.get(i).getId().toString(); } SymbolAxis symbolAxis = new SymbolAxis("Vehicles", series); symbolAxis.setGridBandsVisible(false); plot.setDomainAxis(symbolAxis); // X axis plot.setRangeAxis(new DateAxis("Time", TimeZone.getTimeZone("GMT"), Locale.getDefault())); // Renderer XYBarRenderer xyBarRenderer = new ChartTaskRenderer<T>(dataset, paintSelector); xyBarRenderer.setUseYInterval(true); plot.setRenderer(xyBarRenderer); return chart; }
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);// ww w .j a va 2s .c o m 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:org.matsim.contrib.dvrp.util.chart.ScheduleCharts.java
public static JFreeChart chartSchedule(Collection<? extends Vehicle> vehicles, DescriptionCreator descriptionCreator, PaintSelector paintSelector) { // data/*from w w w. j a v a 2 s .co m*/ TaskSeriesCollection dataset = createScheduleDataset(vehicles, descriptionCreator); XYTaskDataset xyTaskDataset = new XYTaskDataset(dataset); // chart JFreeChart chart = ChartFactory.createXYBarChart("Schedules", "Time", false, "Vehicles", xyTaskDataset, PlotOrientation.HORIZONTAL, false, true, false); XYPlot plot = (XYPlot) chart.getPlot(); // Y axis String[] series = new String[vehicles.size()]; int i = 0; for (Vehicle v : vehicles) { series[i++] = v.getId().toString(); } SymbolAxis symbolAxis = new SymbolAxis("Vehicles", series); symbolAxis.setGridBandsVisible(false); plot.setDomainAxis(symbolAxis); // X axis plot.setRangeAxis(new DateAxis("Time", TimeZone.getTimeZone("GMT"), Locale.getDefault())); // Renderer XYBarRenderer xyBarRenderer = new ChartTaskRenderer(dataset, paintSelector); xyBarRenderer.setUseYInterval(true); plot.setRenderer(xyBarRenderer); return chart; }
From source file:org.jfree.data.gantt.XYTaskDatasetTest.java
/** * Some checks for the equals() method.//from w w w.ja va 2 s . co m */ @Test public void testEquals() { TaskSeries s1 = new TaskSeries("Series"); s1.add(new Task("Task 1", new Date(0L), new Date(1L))); s1.add(new Task("Task 2", new Date(10L), new Date(11L))); s1.add(new Task("Task 3", new Date(20L), new Date(21L))); TaskSeriesCollection u1 = new TaskSeriesCollection(); u1.add(s1); XYTaskDataset d1 = new XYTaskDataset(u1); TaskSeries s2 = new TaskSeries("Series"); s2.add(new Task("Task 1", new Date(0L), new Date(1L))); s2.add(new Task("Task 2", new Date(10L), new Date(11L))); s2.add(new Task("Task 3", new Date(20L), new Date(21L))); TaskSeriesCollection u2 = new TaskSeriesCollection(); u2.add(s2); XYTaskDataset d2 = new XYTaskDataset(u2); assertTrue(d1.equals(d2)); d1.setSeriesWidth(0.123); assertFalse(d1.equals(d2)); d2.setSeriesWidth(0.123); assertTrue(d1.equals(d2)); d1.setTransposed(true); assertFalse(d1.equals(d2)); d2.setTransposed(true); assertTrue(d1.equals(d2)); s1.add(new Task("Task 2", new Date(10L), new Date(11L))); assertFalse(d1.equals(d2)); s2.add(new Task("Task 2", new Date(10L), new Date(11L))); assertTrue(d1.equals(d2)); }
From source file:org.jfree.chart.demo.XYTaskDatasetDemo2.java
private static IntervalXYDataset createDataset2() { XYTaskDataset xytaskdataset = new XYTaskDataset(createTasks()); xytaskdataset.setTransposed(true);//from www . ja va2 s.c o m xytaskdataset.setSeriesWidth(0.59999999999999998D); return xytaskdataset; }
From source file:org.jfree.data.gantt.XYTaskDatasetTest.java
/** * Confirm that cloning works./*from w w w. j a 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); XYTaskDataset d1 = new XYTaskDataset(u1); XYTaskDataset d2 = (XYTaskDataset) 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 = 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.XYTaskDatasetTest.java
/** * Serialize an instance, restore it, and check for equality. *//*w ww . ja v a 2s .co 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: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);/* w w w.java2s . c o m*/ } final XYTaskDataset dataset = new XYTaskDataset(coll); dataset.setTransposed(true); return dataset; }
From source file:oscar.oscarEncounter.oscarMeasurements.pageUtil.MeasurementGraphAction2.java
private static XYTaskDataset getDrugDataSet(String demographic, String[] dins) { TaskSeriesCollection datasetDrug = new TaskSeriesCollection(); oscar.oscarRx.data.RxPrescriptionData prescriptData = new oscar.oscarRx.data.RxPrescriptionData(); for (String din : dins) { oscar.oscarRx.data.RxPrescriptionData.Prescription[] arr = prescriptData .getPrescriptionScriptsByPatientRegionalIdentifier(Integer.parseInt(demographic), din); TaskSeries ts = new TaskSeries(arr[0].getBrandName()); for (oscar.oscarRx.data.RxPrescriptionData.Prescription pres : arr) { ts.add(new Task(pres.getBrandName(), pres.getRxDate(), pres.getEndDate())); }/*from w w w . j a v a 2s .com*/ datasetDrug.add(ts); } XYTaskDataset dataset = new XYTaskDataset(datasetDrug); dataset.setTransposed(true); dataset.setSeriesWidth(0.6); return dataset; }