예제 #1
0
        private void Initialize()
        {
            RenderableSeriesViewModels = new ObservableCollection <IRenderableSeriesViewModel>();
            var random    = new Random();
            var generator = new RandomWalkGenerator();

            for (int i = 0; i < SeriesCount; i++)
            {
                var dataSeries = new XyDataSeries <double, double>();
                var someData   = generator.GetRandomWalkSeries(PointCount);
                generator.Reset();
                dataSeries.Append(someData.XData, someData.YData);

                var rgb = new byte[3];
                random.NextBytes(rgb);

                RenderableSeriesViewModels.Add(new LineRenderableSeriesViewModel
                {
                    DataSeries   = dataSeries,
                    AntiAliasing = false,
                    Stroke       = Color.FromArgb(255, rgb[0], rgb[1], rgb[2]),
                });
            }
        }
        private void OnRunExample()
        {
            Task.Factory.StartNew(() =>
            {
                DataSeries    = null;
                IsBusy        = true;
                var stopwatch = Stopwatch.StartNew();

                // Generate Data and mark time
                DoubleSeries[] xyData = new DoubleSeries[SeriesCount];
                var generator         = new RandomWalkGenerator(0d);
                for (int i = 0; i < SeriesCount; i++)
                {
                    xyData[i] = generator.GetRandomWalkSeries(PointCount);
                    generator.Reset();
                }

                stopwatch.Stop();

                IsBusy = false;

                // Append to SciChartSurface and mark time
                stopwatch         = Stopwatch.StartNew();
                var allDataSeries = new IDataSeries[SeriesCount];
                for (int i = 0; i < SeriesCount; i++)
                {
                    var dataSeries = new XyDataSeries <double, double>();
                    dataSeries.Append(xyData[i].XData, xyData[i].YData);
                    allDataSeries[i] = dataSeries;
                }
                DataSeries = allDataSeries;
                stopwatch.Stop();

                ViewportManager.AnimateZoomExtents(TimeSpan.FromMilliseconds(500));
            });
        }