コード例 #1
0
        internal string ChartDataFor(
            MeasurementComparisonDictionary sourceData,
            AxisLimits limits,
            Size size)
        {
            InitChart(size);
            var timeUnit = limits.TimeUnit;

            limits.EnsureNonZeroRanges();
            InitSeries(sourceData, limits.StartTimestamp, timeUnit);
            InitChartArea();
            SetAxisDimensions(_area.AxisX, XAxisTitleTemplate.FillIn(timeUnit.Caption), limits.X);
            SetAxisDimensions(_area.AxisY, YAxisTitle, limits.Y);
            _area.AxisY.Crossing = 0.0;
            _chart.ChartAreas.Add(_area);
            _chart.Legends.Add(new Legend(ChartLegend));
            _chart.Legends[ChartLegend].DockedToChartArea = ChartAreaName;
            return(AsBase64String(ChartImageFormat.Png));
        }
        internal string ChartDataFor(MeasurementComparisonDictionary sourceData, AxisLimits limits, Size size)
        {
            InitChart(size);
            var axisPaint = new SolidColorPaint(AxisColor)
            {
                StrokeThickness = LineThickness
            };
            var timeUnit = limits.TimeUnit;

            limits.EnsureNonZeroRanges();
            InitSeries(sourceData, limits.StartTimestamp, timeUnit);
            _chart.Sections = new List <RectangularSection>()
                              .Append(new RectangularSection {
                Xi = 0, Xj = 0, Stroke = axisPaint
            })
                              .Append(new RectangularSection {
                Yi = 0, Yj = 0, Stroke = axisPaint
            });
            _chart.XAxes = CreateAxes(limits.X, XAxisTitleTemplate.FillIn(timeUnit.Caption));

            _chart.YAxes = CreateAxes(limits.Y, YAxisTitle);
            return(AsBase64PngString());
        }