Esempio n. 1
0
        public void InterpolatePerformance2(LineSeries.SearchType search_type)
        {
            var valueGroups = Enumerable.Range(0, 1000001).Select(x => x * 1.0).ToLookup(x => ((int)x) % 2);

            var interPoints = valueGroups[1].ToList();
            var valuePoints = valueGroups[0].Select(x => new Point(x, x)).ToList();

            var series = new LineSeries(valuePoints);
            var result = series.Interpolate(interPoints, search_type).ToList();
        }
Esempio n. 2
0
        public void InterpolatePerformance1(LineSeries.SearchType search_type)
        {
            var size = 1000000;

            var valuePoints = new List <Point>()
            {
                new Point(0, 0),
                new Point(size, size),
            };
            var interPoints = Enumerable.Range(0, size).Select(x => x * 1.0).ToList();

            var series = new LineSeries(valuePoints);
            var result = series.Interpolate(interPoints, search_type).ToList();

            var expected = Enumerable.Range(0, size).Select(x => new Point(x, x)).ToList();

            CollectionAssert.AreEqual(expected, result);
        }
Esempio n. 3
0
        public void InterpolatePerformance3(LineSeries.SearchType search_type)
        {
            var randNumbers = new Random(0);

            var interPoints = new List <double>();
            var valuePoints = new List <Point>();

            for (int i = 0; i < 100000; i++)
            {
                interPoints.Add(interPoints.LastOrDefault() + 100 * randNumbers.NextDouble());
            }

            for (int i = 0; i < 10000000; i++)
            {
                valuePoints.Add(new Point(valuePoints.LastOrDefault().X + randNumbers.NextDouble(), randNumbers.NextDouble()));
            }

            var series = new LineSeries(valuePoints);
            var result = series.Interpolate(interPoints, search_type).ToList();
        }