List of usage examples for org.jfree.data.time DateRange DateRange
public DateRange(double lower, double upper)
From source file:org.jfree.data.time.DateRangeTest.java
/** * Confirm that the equals method can distinguish all the required fields. *//*from w ww . j a v a2 s.c o m*/ @Test public void testEquals() { DateRange r1 = new DateRange(new Date(1000L), new Date(2000L)); DateRange r2 = new DateRange(new Date(1000L), new Date(2000L)); assertTrue(r1.equals(r2)); assertTrue(r2.equals(r1)); r1 = new DateRange(new Date(1111L), new Date(2000L)); assertFalse(r1.equals(r2)); r2 = new DateRange(new Date(1111L), new Date(2000L)); assertTrue(r1.equals(r2)); r1 = new DateRange(new Date(1111L), new Date(2222L)); assertFalse(r1.equals(r2)); r2 = new DateRange(new Date(1111L), new Date(2222L)); assertTrue(r1.equals(r2)); }
From source file:org.jfree.data.time.DateRangeTest.java
/** * Serialize an instance, restore it, and check for equality. *///from w ww . j a v a 2s . com @Test public void testSerialization() { DateRange r1 = new DateRange(new Date(1000L), new Date(2000L)); DateRange r2 = (DateRange) TestUtilities.serialised(r1); assertEquals(r1, r2); }
From source file:org.jfree.data.time.DateRangeTest.java
/** * The {@link DateRange} class is immutable, so it doesn't need to * be cloneable.//from w w w . ja v a 2 s .c o m */ @Test public void testClone() { DateRange r1 = new DateRange(new Date(1000L), new Date(2000L)); assertFalse(r1 instanceof Cloneable); }
From source file:org.jfree.data.time.DateRangeTest.java
/** * Confirm that a DateRange is immutable. *///from ww w . ja v a 2 s. co m @Test public void testImmutable() { Date d1 = new Date(10L); Date d2 = new Date(20L); DateRange r = new DateRange(d1, d2); d1.setTime(11L); assertEquals(new Date(10L), r.getLowerDate()); r.getUpperDate().setTime(22L); assertEquals(new Date(20L), r.getUpperDate()); }
From source file:api3.transform.PlotWave.java
public void plot(double[][] signal, String name, long samplerate) { frame.setTitle(name);//from ww w. ja v a 2s . c om 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.projectforge.charting.XYChartBuilder.java
public XYChartBuilder setDateXAxisRange(final Date lower, final Date upper) { if (xAxis == null) { throw new IllegalArgumentException("Call set*XAxis first. No xAxis given yet."); }/* ww w . j a v a 2s .co m*/ xAxis.setRange(new DateRange(lower, upper)); return this; }
From source file:org.codehaus.mojo.dashboard.report.plugin.chart.time.TimeChartRenderer.java
public void createChart() { XYDataset dataset = (XYDataset) this.datasetStrategy.getDataset(); report = ChartFactory.createTimeSeriesChart(this.datasetStrategy.getTitle(), // title this.datasetStrategy.getXAxisLabel(), // x-axis label this.datasetStrategy.getYAxisLabel(), // y-axis label dataset, // data true, // create legend? true, // generate tooltips? false // generate URLs? );//from w w w . j av a2 s. c o m // report.setBackgroundPaint( Color.lightGray ); XYPlot plot = report.getXYPlot(); plot.setBackgroundPaint(Color.white); plot.setDomainGridlinePaint(Color.lightGray); plot.setRangeGridlinePaint(Color.lightGray); plot.setAxisOffset(new RectangleInsets(5D, 5D, 5D, 5D)); XYItemRenderer xyitemrenderer = plot.getRenderer(); if (xyitemrenderer instanceof XYLineAndShapeRenderer) { XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) xyitemrenderer; renderer.setBaseShapesVisible(true); renderer.setBaseShapesFilled(true); renderer.setBaseShapesVisible(true); renderer.setDrawOutlines(true); renderer.setBaseItemLabelGenerator( ((AbstractTimeChartStrategy) this.datasetStrategy).getLabelGenerator()); renderer.setBaseItemLabelFont(new Font("SansSerif", Font.BOLD, 10)); renderer.setBaseItemLabelsVisible(true); renderer.setBasePositiveItemLabelPosition( new ItemLabelPosition(ItemLabelAnchor.OUTSIDE10, TextAnchor.BASELINE_RIGHT)); } Paint[] paints = this.datasetStrategy.getPaintColor(); for (int i = 0; i < dataset.getSeriesCount() && i < paints.length; i++) { xyitemrenderer.setSeriesPaint(i, paints[i]); xyitemrenderer.setSeriesStroke(i, new BasicStroke(2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND)); } plot.setRangeAxis(((AbstractTimeChartStrategy) this.datasetStrategy).getRangeAxis()); DashDateAxis axisDate = new DashDateAxis(); axisDate.setDateFormatOverride( ((AbstractTimeChartStrategy) this.datasetStrategy).getTimePeriod().getDateFormat()); axisDate.setLabel(this.datasetStrategy.getXAxisLabel()); axisDate.setTickUnit(getTickUnit(((AbstractTimeChartStrategy) this.datasetStrategy).getTimePeriod())); axisDate.setUpperMargin(0.0D); axisDate.setDateTickLabelAngle(-0.6); if (((AbstractTimeChartStrategy) this.datasetStrategy).getStartDate() != null && ((AbstractTimeChartStrategy) this.datasetStrategy).getEndDate() != null) { axisDate.setRangeWithMargins( new DateRange(((AbstractTimeChartStrategy) this.datasetStrategy).getStartDate(), ((AbstractTimeChartStrategy) this.datasetStrategy).getEndDate())); } plot.setDomainAxis(axisDate); Date[] dates = DateUtils.getAllDates(((AbstractTimeChartStrategy) this.datasetStrategy).getStartDate(), ((AbstractTimeChartStrategy) this.datasetStrategy).getEndDate(), ((AbstractTimeChartStrategy) this.datasetStrategy).getTimePeriod()); int width = (dates.length * ChartUtils.STANDARD_TIME_ENTRY_WIDTH) + ChartUtils.STANDARD_TIME_ADDITIONAL_WIDTH; if (width > ChartUtils.MINIMUM_WIDTH) { this.setWidth(width); } else { this.setWidth(ChartUtils.MINIMUM_WIDTH); } }
From source file:cs.stats.gui.StatsCharts.java
public StatsCharts(double tresholdTRT) { super(new BorderLayout()); this.tresholdTRT = tresholdTRT; datasets = new TimeSeriesCollection[SUBPLOT_COUNT]; // set the initial date according to the one specified in SystemClock object GregorianCalendar calendar = new GregorianCalendar(); calendar.set(GregorianCalendar.HOUR, 8); calendar.set(GregorianCalendar.DAY_OF_MONTH, 1); calendar.set(GregorianCalendar.MONTH, 2); calendar.set(GregorianCalendar.YEAR, 2010); //setup the initial date range GregorianCalendar calendarForInitialDateRange = new GregorianCalendar(); calendarForInitialDateRange.set(GregorianCalendar.HOUR, 8); calendarForInitialDateRange.set(GregorianCalendar.DAY_OF_MONTH, 1); calendarForInitialDateRange.set(GregorianCalendar.MONTH, 2); calendarForInitialDateRange.set(GregorianCalendar.YEAR, 2010); initialDateRange = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange1 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange2 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange3 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange4 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange5 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); JPanel tabbedPanel = createChartTab(); add(tabbedPanel, "North"); }
From source file:cs.gui.stats.PerformanceStats.java
public PerformanceStats(ModelInterface modelInterfaceRef, StatsManager statsManagerRer) { super(new BorderLayout()); this.modelInterface = modelInterfaceRef; this.statsManager = statsManagerRer; datasets = new TimeSeriesCollection[SUBPLOT_COUNT]; // set the initial date according to the one specified in SystemClock object GregorianCalendar calendar = new GregorianCalendar(); calendar.set(GregorianCalendar.HOUR_OF_DAY, modelInterface.getSimulationClock().getStartTime().get(Calendar.HOUR_OF_DAY)); calendar.set(GregorianCalendar.DAY_OF_MONTH, modelInterface.getSimulationClock().getStartTime().get(Calendar.DAY_OF_MONTH)); calendar.set(GregorianCalendar.MONTH, modelInterface.getSimulationClock().getStartTime().get(Calendar.MONTH)); calendar.set(GregorianCalendar.YEAR, modelInterface.getSimulationClock().getStartTime().get(Calendar.YEAR)); //setup the initial date range GregorianCalendar calendarForInitialDateRange = new GregorianCalendar(); calendarForInitialDateRange.set(GregorianCalendar.HOUR_OF_DAY, modelInterface.getSimulationClock().getStartTime().get(Calendar.HOUR_OF_DAY)); calendarForInitialDateRange.set(GregorianCalendar.DAY_OF_MONTH, modelInterface.getSimulationClock().getStartTime().get(Calendar.DAY_OF_MONTH)); calendarForInitialDateRange.set(GregorianCalendar.MONTH, modelInterface.getSimulationClock().getStartTime().get(Calendar.MONTH)); calendarForInitialDateRange.set(GregorianCalendar.YEAR, modelInterface.getSimulationClock().getStartTime().get(Calendar.YEAR)); initialDateRange = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange1 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange2 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange3 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange4 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); initialDateRange5 = new DateRange(calendarForInitialDateRange.getTime(), calendar.getTime()); JPanel tabbedPanel = createChartTab(); add(tabbedPanel, "North"); }
From source file:org.cds06.speleograph.data.Series.java
/** * Compute the date range of the items in this set. * * @return A date range which contains the lower and upper bounds of data. *//* w ww . j a v a 2 s .co m*/ public DateRange getRange() { int max = getItemCount(); DateRange range; if (max == 0) { Date now = Calendar.getInstance().getTime(); return new DateRange(now, now); } Date minDate = new Date(Long.MAX_VALUE), maxDate = new Date(Long.MIN_VALUE); for (int i = 0; i < max; i++) { Item item = items.get(i); if (item.getDate().before(minDate)) minDate = item.getDate(); if (item.getDate().after(maxDate)) maxDate = item.getDate(); } range = new DateRange(minDate, maxDate); return range; }