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()); }