List of usage examples for org.jfree.data.time TimePeriodValues TimePeriodValues
public TimePeriodValues(String name)
From source file:com.android.ddmuilib.log.event.DisplaySyncPerf.java
/** * Resets the display./*w ww . j a va2s . c o m*/ */ @Override void resetUI() { super.resetUI(); XYPlot xyPlot = mChart.getXYPlot(); xyPlot.getRangeAxis().setVisible(false); mTooltipGenerator = new CustomXYToolTipGenerator(); @SuppressWarnings("unchecked") List<String>[] mTooltipsTmp = new List[NUM_SERIES]; mTooltips = mTooltipsTmp; XYBarRenderer br = new XYBarRenderer(); br.setUseYInterval(true); mDatasets = new TimePeriodValues[NUM_SERIES]; TimePeriodValuesCollection tpvc = new YIntervalTimePeriodValuesCollection(1); xyPlot.setDataset(tpvc); xyPlot.setRenderer(br); for (int i = 0; i < NUM_SERIES; i++) { br.setSeriesPaint(i, SERIES_COLORS[i]); mDatasets[i] = new TimePeriodValues(SERIES_NAMES[i]); tpvc.addSeries(mDatasets[i]); mTooltips[i] = new ArrayList<String>(); mTooltipGenerator.addToolTipSeries(mTooltips[i]); br.setSeriesToolTipGenerator(i, mTooltipGenerator); } }
From source file:org.jfree.data.time.TimePeriodValuesTest.java
/** * Tests the equals method./*from ww w . j a va2 s. c o m*/ */ @Test public void testEquals() { TimePeriodValues s1 = new TimePeriodValues("Time Series 1"); TimePeriodValues s2 = new TimePeriodValues("Time Series 2"); boolean b1 = s1.equals(s2); assertFalse("b1", b1); s2.setKey("Time Series 1"); boolean b2 = s1.equals(s2); assertTrue("b2", b2); // domain description s1.setDomainDescription("XYZ"); assertFalse(s1.equals(s2)); s2.setDomainDescription("XYZ"); assertTrue(s1.equals(s2)); // domain description - null s1.setDomainDescription(null); assertFalse(s1.equals(s2)); s2.setDomainDescription(null); assertTrue(s1.equals(s2)); // range description s1.setRangeDescription("XYZ"); assertFalse(s1.equals(s2)); s2.setRangeDescription("XYZ"); assertTrue(s1.equals(s2)); // range description - null s1.setRangeDescription(null); assertFalse(s1.equals(s2)); s2.setRangeDescription(null); assertTrue(s1.equals(s2)); RegularTimePeriod p1 = new Day(); RegularTimePeriod p2 = p1.next(); s1.add(p1, 100.0); s1.add(p2, 200.0); boolean b3 = s1.equals(s2); assertFalse("b3", b3); s2.add(p1, 100.0); s2.add(p2, 200.0); boolean b4 = s1.equals(s2); assertTrue("b4", b4); }
From source file:org.jfree.data.time.TimePeriodValuesCollectionTest.java
/** * Some checks for the getDomainBounds() method. *///from ww w. j a va 2 s. c o m @Test public void testGetDomainBoundsWithoutInterval() { // check empty dataset TimePeriodValuesCollection dataset = new TimePeriodValuesCollection(); dataset.setDomainIsPointsInTime(false); Range r = dataset.getDomainBounds(false); assertNull(r); // check dataset with one time period TimePeriodValues s1 = new TimePeriodValues("S1"); s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0); dataset.addSeries(s1); r = dataset.getDomainBounds(false); assertEquals(1500.0, r.getLowerBound(), EPSILON); assertEquals(1500.0, r.getUpperBound(), EPSILON); // check dataset with two time periods s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0); r = dataset.getDomainBounds(false); assertEquals(1500.0, r.getLowerBound(), EPSILON); assertEquals(2250.0, r.getUpperBound(), EPSILON); }
From source file:ch.ksfx.web.services.chart.ObservationChartGenerator.java
public TimePeriodValues getMovingAverage(TimeSeries asset, Date startDate, Date endDate, Integer movingAverageSeconds) { TimePeriodValues movingAverageBand = new TimePeriodValues( "SMA" + (movingAverageSeconds / 60 / 60 / 24) + "DAYS " + asset.getName()); List<Observation> assetPrices = observationDAO.queryObservationsSparse(asset.getId().intValue(), startDate, endDate);/*w ww . j a v a 2 s . c o m*/ //Get some earlier prices to calc simple moving average List<Observation> movingAveragePrices = observationDAO.queryObservationsSparse(asset.getId().intValue(), (startDate.getTime() == 0l) ? startDate : DateUtils.addSeconds(startDate, movingAverageSeconds * -1), endDate); assetPrices = simplifyAssetPrices(assetPrices); Integer filterSizer = 0; List<Observation> relevantMovingAveragePrices = null; Double movingAverage = null; for (Observation ap : assetPrices) { Date referenceDate = DateUtils.addSeconds(ap.getObservationTime(), movingAverageSeconds * -1); if (movingAveragePrices.get(0).getObservationTime().after(referenceDate)) { continue; } for (Integer iI = filterSizer; iI < movingAveragePrices.size(); iI++) { if (movingAveragePrices.get(iI + 1).getObservationTime().after(referenceDate)) { //We went too far, begin index was the last one filterSizer = iI; break; } } relevantMovingAveragePrices = movingAveragePrices.subList(filterSizer, movingAveragePrices.indexOf(ap)); movingAverage = MovingAverageCalculator.calculateMovingAverageObservation(relevantMovingAveragePrices, true); movingAverageBand.add(new SimpleTimePeriod(ap.getObservationTime(), ap.getObservationTime()), movingAverage); } return movingAverageBand; }
From source file:org.jfree.data.time.junit.TimePeriodValuesTest.java
/** * Add a value to series A for 1999. It should be added at index 0. *//* ww w .ja v a 2 s . c o m*/ public void testAddValue() { TimePeriodValues tpvs = new TimePeriodValues("Test"); try { tpvs.add(new Year(1999), new Integer(1)); } catch (SeriesException e) { System.err.println("Problem adding to series."); } int value = tpvs.getValue(0).intValue(); assertEquals(1, value); }
From source file:org.jfree.chart.demo.TimePeriodValuesDemo.java
/** * Creates a dataset, consisting of two series of monthly data. * * @return the dataset./*w w w. ja va2s . c om*/ */ public XYDataset createDataset2() { final TimePeriodValues s1 = new TimePeriodValues("WebCOINS"); final Day today = new Day(); for (int i = 0; i < 24; i++) { final Minute m0 = new Minute(0, new Hour(i, today)); final Minute m1 = new Minute(30, new Hour(i, today)); final Minute m2 = new Minute(0, new Hour(i + 1, today)); s1.add(new SimpleTimePeriod(m0.getStart(), m1.getStart()), Math.random() * 2.0); s1.add(new SimpleTimePeriod(m1.getStart(), m2.getStart()), Math.random() * 2.0); } final TimePeriodValuesCollection dataset = new TimePeriodValuesCollection(); dataset.addSeries(s1); return dataset; }
From source file:net.commerce.zocalo.freechart.ChartTest.java
public void testEmptyGraph() throws IOException { String fileName = "emptyChart"; TimePeriodValuesCollection values = new TimePeriodValuesCollection(new TimePeriodValues("testing")); assertFalse("should have created " + fileName + ".png", newEmptyFile("TEST", fileName).exists()); ensureDirExists(new File("data")); Date lastTrade = new Date(0); File pngFile = ChartGenerator.writeChartFile(".", "data", fileName, values, ChartGenerator.CHART_SIZE, lastTrade);/*from w w w. j a v a2s.co m*/ assertEquals(new File("./data/" + fileName + "-p.png"), new File(pngFile.getPath())); assertTrue("empty file should be small", 10000 > pngFile.length()); }
From source file:org.jfree.data.time.TimePeriodValuesCollectionTest.java
/** * Some more checks for the getDomainBounds() method. * //from ww w .j a va 2 s. c o m * @see #testGetDomainBoundsWithoutInterval() */ @Test public void testGetDomainBoundsWithInterval() { // check empty dataset TimePeriodValuesCollection dataset = new TimePeriodValuesCollection(); Range r = dataset.getDomainBounds(true); assertNull(r); // check dataset with one time period TimePeriodValues s1 = new TimePeriodValues("S1"); s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0); dataset.addSeries(s1); r = dataset.getDomainBounds(true); assertEquals(1000.0, r.getLowerBound(), EPSILON); assertEquals(2000.0, r.getUpperBound(), EPSILON); // check dataset with two time periods s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0); r = dataset.getDomainBounds(true); assertEquals(1000.0, r.getLowerBound(), EPSILON); assertEquals(3000.0, r.getUpperBound(), EPSILON); // add a third time period s1.add(new SimpleTimePeriod(6000L, 7000L), 1.5); r = dataset.getDomainBounds(true); assertEquals(1000.0, r.getLowerBound(), EPSILON); assertEquals(7000.0, r.getUpperBound(), EPSILON); // add a fourth time period s1.add(new SimpleTimePeriod(4000L, 5000L), 1.4); r = dataset.getDomainBounds(true); assertEquals(1000.0, r.getLowerBound(), EPSILON); assertEquals(7000.0, r.getUpperBound(), EPSILON); }
From source file:org.jfree.data.time.junit.TimePeriodValuesTest.java
/** * Serialize an instance, restore it, and check for equality. *//* w ww . ja v a2s.c o m*/ public void testSerialization() { TimePeriodValues s1 = new TimePeriodValues("A test"); s1.add(new Year(2000), 13.75); s1.add(new Year(2001), 11.90); s1.add(new Year(2002), null); s1.add(new Year(2005), 19.32); s1.add(new Year(2007), 16.89); TimePeriodValues s2 = null; try { ByteArrayOutputStream buffer = new ByteArrayOutputStream(); ObjectOutput out = new ObjectOutputStream(buffer); out.writeObject(s1); out.close(); ObjectInput in = new ObjectInputStream(new ByteArrayInputStream(buffer.toByteArray())); s2 = (TimePeriodValues) in.readObject(); in.close(); } catch (Exception e) { e.printStackTrace(); } assertTrue(s1.equals(s2)); }
From source file:org.jfree.data.time.TimePeriodValuesTest.java
/** * A test for bug report 1161329./*from w w w . j av a 2 s. co m*/ */ @Test public void test1161329() { TimePeriodValues tpv = new TimePeriodValues("Test"); RegularTimePeriod t = new Day(); tpv.add(t, 1.0); t = t.next(); tpv.add(t, 2.0); tpv.delete(0, 1); assertEquals(0, tpv.getItemCount()); tpv.add(t, 2.0); assertEquals(1, tpv.getItemCount()); }