private IRenderableSeries initXyySeries(XyyRenderableSeriesBase series) { final XyyDataSeries<Double, Double> dataSeries = sciChartBuilder.newXyyDataSeries(Double.class, Double.class).build(); double[] randomWalkY = getRandomWalk(1d); double[] randomWalkY1 = getRandomWalk(-1d); for (int i = 0; i < POINTS_COUNT; i++) { dataSeries.append((double) i, randomWalkY[i], randomWalkY1[i]); } series.setDataSeries(dataSeries); initAnimators(sciChartBuilder.newAnimator(series)); sweepAnimator = sciChartBuilder.newAnimator(series).withSweepTransformation().build(); return series; }
final XyyDataSeries<Date, Double> var3DataSeries = sciChartBuilder.newXyyDataSeries(Date.class, Double.class).build(); final XyyDataSeries<Date, Double> var2DataSeries = sciChartBuilder.newXyyDataSeries(Date.class, Double.class).build(); final XyyDataSeries<Date, Double> var1DataSeries = sciChartBuilder.newXyyDataSeries(Date.class, Double.class).build();
public MacdPaneModel(SciChartBuilder builder, PriceSeries prices) { super(builder, MACD, "0.00", false); final MovingAverage.MacdPoints macdPoints = MovingAverage.macd(prices.getCloseData(), 12, 25, 9); final XyDataSeries<Date, Double> histogramDataSeries = builder.newXyDataSeries(Date.class, Double.class).withSeriesName("Histogram").build(); histogramDataSeries.append(prices.getDateData(), macdPoints.divergenceValues); addRenderableSeries(builder.newColumnSeries().withDataSeries(histogramDataSeries).withYAxisId(MACD).build()); final XyyDataSeries<Date, Double> macdDataSeries = builder.newXyyDataSeries(Date.class, Double.class).withSeriesName("MACD").build(); macdDataSeries.append(prices.getDateData(), macdPoints.macdValues, macdPoints.signalValues); addRenderableSeries(builder.newBandSeries().withDataSeries(macdDataSeries).withYAxisId(MACD).build()); Collections.addAll(annotations, builder.newAxisMarkerAnnotation().withY1(histogramDataSeries.getYValues().get(histogramDataSeries.getCount() - 1)).withYAxisId(MACD).build(), builder.newAxisMarkerAnnotation().withY1(macdDataSeries.getYValues().get(macdDataSeries.getCount() - 1)).withYAxisId(MACD).build()); } }
public MacdPaneModel(SciChartBuilder builder, PriceSeries prices) { super(builder, MACD, "0.00", false); final MovingAverage.MacdPoints macdPoints = MovingAverage.macd(prices.getCloseData(), 12, 25, 9); final XyDataSeries<Date, Double> histogramDataSeries = builder.newXyDataSeries(Date.class, Double.class).withSeriesName("Histogram").build(); histogramDataSeries.append(prices.getDateData(), macdPoints.divergenceValues); addRenderableSeries(builder.newColumnSeries().withDataSeries(histogramDataSeries).withYAxisId(MACD).build()); final XyyDataSeries<Date, Double> macdDataSeries = builder.newXyyDataSeries(Date.class, Double.class).withSeriesName("MACD").build(); macdDataSeries.append(prices.getDateData(), macdPoints.macdValues, macdPoints.signalValues); addRenderableSeries(builder.newBandSeries().withDataSeries(macdDataSeries).withYAxisId(MACD).build()); Collections.addAll(annotations, builder.newAxisMarkerAnnotation().withY1(histogramDataSeries.getYValues().get(histogramDataSeries.getCount() - 1)).withYAxisId(MACD).build(), builder.newAxisMarkerAnnotation().withY1(macdDataSeries.getYValues().get(macdDataSeries.getCount() - 1)).withYAxisId(MACD).build()); } }
@Override protected void initExample() { final IAxis xAxis = sciChartBuilder.newNumericAxis().withVisibleRange(1.1, 2.7).build(); final IAxis yAxis = sciChartBuilder.newNumericAxis().withGrowBy(0.1, 0.1).build(); final DoubleSeries data = DataManager.getInstance().getDampedSinewave(1.0, 0.01, 1000, 10); final DoubleSeries moreData = DataManager.getInstance().getDampedSinewave(1.0, 0.005, 1000, 12); final XyyDataSeries<Double, Double> dataSeries = sciChartBuilder.newXyyDataSeries(Double.class, Double.class).build(); dataSeries.append(data.xValues, data.yValues, moreData.yValues); final FastBandRenderableSeries rSeries = sciChartBuilder.newBandSeries() .withDataSeries(dataSeries) .withFillColor(0x33279B27).withFillY1Color(0x33FF1919) .withStrokeStyle(0xFFFF1919, 1f, true).withStrokeY1Style(0xFF279B27, 1f, true) .build(); UpdateSuspender.using(surface, new Runnable() { @Override public void run() { Collections.addAll(surface.getXAxes(), xAxis); Collections.addAll(surface.getYAxes(), yAxis); Collections.addAll(surface.getRenderableSeries(), rSeries); Collections.addAll(surface.getChartModifiers(), sciChartBuilder.newModifierGroupWithDefaultModifiers().build()); sciChartBuilder.newAnimator(rSeries).withScaleTransformation().withInterpolator(new EasingInterpolator(Ease.ELASTIC_OUT)).withDuration(3000).withStartDelay(350).start(); } }); } }
final DoubleSeries moreData = DataManager.getInstance().getDampedSinewave(1.0, 0.005, 1000, 12); final XyyDataSeries<Double, Double> dataSeries = sciChartBuilder.newXyyDataSeries(Double.class, Double.class).build(); dataSeries.append(data.xValues, data.yValues, moreData.yValues);