private void _chart_OnDrawLine(object sender, Charting.Controls.Chart.DrawEventArgs <Events.DoubleDrawingData> e) { using (CGContext g = UIGraphics.GetCurrentContext()) { g.SetLineWidth(2.5F); Colors[e.Data.SeriesNo].SetFill(); Colors[e.Data.SeriesNo].SetStroke(); g.MoveTo((float)e.Data.XFrom, (float)e.Data.YFrom); g.AddLineToPoint((float)e.Data.XTo, (float)e.Data.YTo); g.DrawPath(CGPathDrawingMode.FillStroke); } }
private void _chart_OnDrawBar(object sender, Charting.Controls.Chart.DrawEventArgs <Events.DoubleDrawingData> e) { using (CGContext g = UIGraphics.GetCurrentContext()) { g.SetLineWidth(1); Colors[e.Data.SeriesNo].SetFill(); Colors[e.Data.SeriesNo].SetStroke(); RectangleF rect = new RectangleF((float)e.Data.XFrom, (float)e.Data.YFrom, (float)(e.Data.XTo - e.Data.XFrom), (float)(e.Data.YTo - e.Data.YFrom)); g.AddRect(rect); g.DrawPath(CGPathDrawingMode.FillStroke); } }
private void _chart_OnDrawCircle(object sender, Charting.Controls.Chart.DrawEventArgs <Events.SingleDrawingData> e) { using (CGContext g = UIGraphics.GetCurrentContext()) { g.SetLineWidth(2); Colors[e.Data.SeriesNo].SetFill(); Colors[e.Data.SeriesNo].SetStroke(); float startAngle = -((float)Math.PI / 2); float endAngle = ((2 * (float)Math.PI) + startAngle); g.AddArc((float)e.Data.X, (float)e.Data.Y, (float)e.Data.Size, startAngle, endAngle, true); g.DrawPath(CGPathDrawingMode.FillStroke); } }
private void _chart_OnDrawPie(object sender, Charting.Controls.Chart.DrawEventArgs <Events.PieDrawingData> e) { double totalDegrees = 0; for (int i = 0; i < e.Data.Percentages.Length; i++) { double degrees = e.Data.Percentages[i]; using (CGContext g = UIGraphics.GetCurrentContext()) { g.SetLineWidth(2); Colors[i].SetFill(); Colors[i].SetStroke(); g.AddArc((float)e.Data.X, (float)e.Data.Y, (float)e.Data.Size, (float)(Math.PI / 180 * totalDegrees), (float)(Math.PI / 180 * degrees), true); g.DrawPath(CGPathDrawingMode.FillStroke); } totalDegrees += degrees; } }
private void _chart_OnDrawText(object sender, Charting.Controls.Chart.DrawEventArgs <Events.TextDrawingData> e) { NSString str = new NSString(e.Data.Text); str.DrawString(new PointF((float)e.Data.X, (float)e.Data.Y), UIFont.SystemFontOfSize(12)); }