public void UpdateChart(NSTimer tr) { this.chart.RemoveAllData(); Random r = new Random(); TKChartDataPoint dataPoint = new TKChartDataPoint(NSDate.Now, new NSNumber(r.Next() % 70)); this.dataPoints.Add(dataPoint); if (this.dataPoints.Count > 25) { this.dataPoints.RemoveAt(0); } this.chart.YAxis = new TKChartNumericAxis(new NSNumber(0), new NSNumber(100)); TKChartDataPoint firstPoint = this.dataPoints [0]; TKChartDataPoint lastPoint = this.dataPoints [this.dataPoints.Count - 1]; TKChartDateTimeAxis xAxis = new TKChartDateTimeAxis(firstPoint.DataXValue, lastPoint.DataXValue); xAxis.Style.LabelStyle.FitMode = TKChartAxisLabelFitMode.None; xAxis.Style.MajorTickStyle.MaxTickClippingMode = TKChartAxisClippingMode.Visible; xAxis.MajorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Seconds; this.chart.XAxis = xAxis; this.lineSeries = new TKChartLineSeries(this.dataPoints.ToArray()); this.chart.AddSeries(this.lineSeries); this.chart.ReloadData(); }
public override void ViewDidLoad() { this.AddOption("Sequential animation", applySequential); this.AddOption("Grow animation", applyGrow); base.ViewDidLoad(); chart = new TKChart(this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; chart.AllowAnimations = true; chart.Delegate = chartDelegate; this.View.AddSubview(chart); Random r = new Random(); List <TKChartDataPoint> list = new List <TKChartDataPoint> (); for (int i = 0; i < 10; i++) { list.Add(new TKChartDataPoint(new NSNumber(i), new NSNumber(r.Next() % 100))); } TKChartLineSeries lineSeries = new TKChartLineSeries(list.ToArray()); chart.AddSeries(lineSeries); float shapeSize = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 14 : 17; lineSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(shapeSize, shapeSize)); lineSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; lineSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; chart.AddSeries(lineSeries); }
public override void ViewDidLoad() { base.ViewDidLoad(); chart = new TKChart(this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleHeight | UIViewAutoresizing.FlexibleWidth; chart.Delegate = chartDelegate; this.View.AddSubview(chart); int[] values = new int[] { 58, 59, 61, 64, 66, 69, 72, 72, 69 }; int[] values1 = new int[] { 42, 44, 47, 51, 56, 61, 62, 64, 62 }; List <TKChartDataPoint> dataPoints = new List <TKChartDataPoint> (); List <TKChartDataPoint> dataPoints1 = new List <TKChartDataPoint> (); for (int i = 0; i < values.Length; i++) { TKChartDataPoint point = new TKChartDataPoint(new NSNumber(i), new NSNumber(values [i])); TKChartDataPoint point1 = new TKChartDataPoint(new NSNumber(i), new NSNumber(values1 [i])); dataPoints.Add(point); dataPoints1.Add(point1); } // >> chart-pointlabels-cs TKChartLineSeries lineSeries = new TKChartLineSeries(dataPoints.ToArray()); lineSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; lineSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(8, 8)); lineSeries.Style.PointLabelStyle.TextHidden = false; lineSeries.Style.PointLabelStyle.LabelOffset = new UIOffset(0, -24); lineSeries.Style.PointLabelStyle.Insets = new UIEdgeInsets(-1, -5, -1, -5); lineSeries.Style.PointLabelStyle.LayoutMode = TKChartPointLabelLayoutMode.Manual; lineSeries.Style.PointLabelStyle.Font = UIFont.SystemFontOfSize(10); lineSeries.Style.PointLabelStyle.TextAlignment = UITextAlignment.Center; lineSeries.Style.PointLabelStyle.TextColor = UIColor.White; lineSeries.Style.PointLabelStyle.Fill = new TKSolidFill(new UIColor((float)(108 / 255.0), (float)(181 / 255.0), (float)(250 / 255.0), (float)1.0)); lineSeries.Style.PointLabelStyle.ClipMode = TKChartPointLabelClipMode.Hidden; // << chart-pointlabels-cs TKChartLineSeries lineSeries1 = new TKChartLineSeries(dataPoints1.ToArray()); lineSeries1.SelectionMode = TKChartSeriesSelectionMode.DataPoint; lineSeries1.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(8, 8)); lineSeries1.Style.PointLabelStyle.TextHidden = false; lineSeries1.Style.PointLabelStyle.LabelOffset = new UIOffset(0, -24); lineSeries1.Style.PointLabelStyle.Insets = new UIEdgeInsets(-1, -5, -1, -5); lineSeries1.Style.PointLabelStyle.LayoutMode = TKChartPointLabelLayoutMode.Manual; lineSeries1.Style.PointLabelStyle.Font = UIFont.SystemFontOfSize(10); lineSeries1.Style.PointLabelStyle.TextAlignment = UITextAlignment.Center; lineSeries1.Style.PointLabelStyle.TextColor = UIColor.White; lineSeries1.Style.PointLabelStyle.Fill = new TKSolidFill(new UIColor((float)(241 / 255.0), (float)(140 / 255.0), (float)(133 / 255.0), (float)1.0)); lineSeries1.Style.PointLabelStyle.ClipMode = TKChartPointLabelClipMode.Hidden; TKChartNumericAxis yAxis = new TKChartNumericAxis(new NSNumber(40), new NSNumber(80)); yAxis.MajorTickInterval = new NSNumber(10); chart.YAxis = yAxis; chart.AddSeries(lineSeries); chart.AddSeries(lineSeries1); }
public override void ViewDidLoad() { base.ViewDidLoad (); TKChart chart = new TKChart (this.ExampleBounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview (chart); Random r = new Random (); List<TKChartDataPoint> list = new List<TKChartDataPoint> (); for (int i = 0; i < 12; i++) { list.Add (new TKChartDataPoint (new NSNumber (i), new NSNumber (r.Next () % 2000))); } TKChartLineSeries series = new TKChartLineSeries (list.ToArray()); series.SelectionMode = TKChartSeriesSelectionMode.Series; TKChartNumericAxis xAxis = new TKChartNumericAxis (); xAxis.Range = new TKRange (new NSNumber (0), new NSNumber (11)); xAxis.Position = TKChartAxisPosition.Bottom; xAxis.MajorTickInterval = 1; chart.XAxis = xAxis; TKChartNumericAxis yAxis = new TKChartNumericAxis (); yAxis.Range = new TKRange (new NSNumber (0), new NSNumber (2000)); yAxis.Position = TKChartAxisPosition.Left; yAxis.MajorTickInterval = 400; chart.YAxis = yAxis; chart.AddSeries (series); }
public void reloadChart(object sender, EventArgs e) { chart.RemoveAllData (); Random r = new Random (); for (int i = 0; i < 3; i++) { List<TKChartDataPoint> list = new List<TKChartDataPoint> (); for (int j = 0; j < 8; j++) { list.Add(new TKChartDataPoint(new NSNumber(j+1), new NSNumber(r.Next()%100))); } TKChartSeries series = null; switch (this.SelectedOption) { case 0: series = new TKChartLineSeries (list.ToArray ()); break; case 1: series = new TKChartSplineSeries (list.ToArray ()); break; case 2: series = new TKChartAreaSeries (list.ToArray()); break; case 3: series = new TKChartSplineAreaSeries (list.ToArray()); break; } series.SelectionMode = TKChartSeriesSelectionMode.Series; chart.AddSeries (series); } }
public override void ViewDidLoad () { this.AddOption ("Sequential animation", applySequential); this.AddOption ("Grow animation", applyGrow); base.ViewDidLoad (); chart = new TKChart (this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; chart.AllowAnimations = true; chart.Delegate = chartDelegate; this.View.AddSubview (chart); Random r = new Random (); List<TKChartDataPoint> list = new List<TKChartDataPoint> (); for (int i = 0; i < 10; i++) { list.Add (new TKChartDataPoint(new NSNumber(i), new NSNumber(r.Next() % 100))); } TKChartLineSeries lineSeries = new TKChartLineSeries (list.ToArray ()); chart.AddSeries (lineSeries); float shapeSize = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 14 : 17; lineSeries.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF (shapeSize, shapeSize)); lineSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; lineSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; chart.AddSeries (lineSeries); }
public override void ViewDidLoad() { base.ViewDidLoad(); TKChart chart = new TKChart(this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview(chart); string[] months = new string[] { "Jan", "Feb", "Mar", "Apr", "May", "Jun" }; int[] values = new int[] { 95, 40, 55, 30, 76, 34 }; List <TKChartDataPoint> list = new List <TKChartDataPoint> (); for (int i = 0; i < months.Length; i++) { list.Add(new TKChartDataPoint(new NSString(months[i]), new NSNumber(values[i]))); } TKChartLineSeries series = new TKChartLineSeries(list.ToArray()); // >> chart-point-shape-cs series.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(10, 10)); // << chart-point-shape-cs // >> chart-point-pallete-cs var paletteItem = new TKChartPaletteItem(); paletteItem.Fill = new TKSolidFill(UIColor.Red); var palette = new TKChartPalette(); palette.AddPaletteItem(paletteItem); series.Style.ShapePalette = palette; // << chart-point-pallete-cs chart.AddSeries(series); // >> chart-balloon-annotation-cs NSMutableParagraphStyle paragraphStyle = (NSMutableParagraphStyle) new NSParagraphStyle().MutableCopy(); paragraphStyle.Alignment = UITextAlignment.Center; NSMutableDictionary attributes = new NSMutableDictionary(); attributes.Add(UIStringAttributeKey.ForegroundColor, UIColor.White); attributes.Add(UIStringAttributeKey.ParagraphStyle, paragraphStyle); NSMutableAttributedString attributedText = new NSMutableAttributedString("Important milestone:\n $55000", attributes); attributedText.AddAttribute(UIStringAttributeKey.ForegroundColor, UIColor.Yellow, new NSRange(22, 6)); TKChartBalloonAnnotation balloon = new TKChartBalloonAnnotation(new NSString("Mar"), new NSNumber(55), series); balloon.AttributedText = attributedText; balloon.Style.DistanceFromPoint = 20; balloon.Style.ArrowSize = new Size(10, 10); chart.AddAnnotation(balloon); // << chart-balloon-annotation-cs balloon = new TKChartBalloonAnnotation("The lowest value:\n $30000", new NSString("Apr"), new NSNumber(30), series); balloon.Style.VerticalAlign = TKChartBalloonVerticalAlignment.Bottom; chart.AddAnnotation(balloon); }
void snippet2() { var seriesForProfit = new TKChartLineSeries(profitData.ToArray()); seriesForProfit.Selection = TKChartSeriesSelection.Series; seriesForProfit.MarginForHitDetection = 30.0f; chart.AddSeries(seriesForProfit); }
public override TKChartSeries GetSeries(TKChart chart, nuint index) { var series = chart.DequeueReusableSeriesWithIdentifier("series1") as TKChartSeries; if (series == null) { series = new TKChartLineSeries(null, "series1"); series.Title = "Series title"; } return(series); }
void LoadLineSeries(object sender, EventArgs e) { chart.RemoveAllData(); TKChartLineSeries lineSeries = new TKChartLineSeries(lineData.ToArray()); lineSeries.Style.PointLabelStyle.TextHidden = false; lineSeries.Style.PointLabelStyle.LabelOffset = new UIOffset(0, 15); lineSeries.Style.PointLabelStyle.Font = UIFont.SystemFontOfSize(9); chart.AddSeries(lineSeries); chart.ReloadData(); }
public override void ViewDidLoad() { base.ViewDidLoad (); chart = new TKChart (this.ExampleBounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleHeight | UIViewAutoresizing.FlexibleWidth; chart.Delegate = new ChartDelegate (0, 3); this.View.AddSubview (chart); int[] values = new int[] { 58, 59, 61, 64, 66, 69, 72, 72, 69 }; int[] values1 = new int[] { 42, 44, 47, 51, 56, 61, 62, 64, 62 }; List<TKChartDataPoint> dataPoints = new List<TKChartDataPoint> (); List<TKChartDataPoint> dataPoints1 = new List<TKChartDataPoint> (); for (int i = 0; i < values.Length; i++) { TKChartDataPoint point = new TKChartDataPoint (new NSNumber (i), new NSNumber (values [i])); TKChartDataPoint point1 = new TKChartDataPoint (new NSNumber (i), new NSNumber (values1 [i])); dataPoints.Add (point); dataPoints1.Add (point1); } TKChartLineSeries lineSeries = new TKChartLineSeries (dataPoints.ToArray ()); lineSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; lineSeries.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF (8, 8)); lineSeries.Style.PointLabelStyle.TextHidden = false; lineSeries.Style.PointLabelStyle.LabelOffset = new UIOffset (0, -24); lineSeries.Style.PointLabelStyle.Insets = new UIEdgeInsets (-1, -5, -1, -5); lineSeries.Style.PointLabelStyle.LayoutMode = TKChartPointLabelLayoutMode.Manual; lineSeries.Style.PointLabelStyle.Font = UIFont.SystemFontOfSize (10); lineSeries.Style.PointLabelStyle.TextAlignment = UITextAlignment.Center; lineSeries.Style.PointLabelStyle.TextColor = UIColor.White; lineSeries.Style.PointLabelStyle.Fill = new TKSolidFill (new UIColor ((float)(108 / 255.0), (float)(181 / 255.0), (float)(250 / 255.0), (float)1.0)); lineSeries.Style.PointLabelStyle.ClipMode = TKChartPointLabelClipMode.Hidden; TKChartLineSeries lineSeries1 = new TKChartLineSeries (dataPoints1.ToArray ()); lineSeries1.SelectionMode = TKChartSeriesSelectionMode.DataPoint; lineSeries1.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF (8, 8)); lineSeries1.Style.PointLabelStyle.TextHidden = false; lineSeries1.Style.PointLabelStyle.LabelOffset = new UIOffset (0, -24); lineSeries1.Style.PointLabelStyle.Insets = new UIEdgeInsets (-1, -5, -1, -5); lineSeries1.Style.PointLabelStyle.LayoutMode = TKChartPointLabelLayoutMode.Manual; lineSeries1.Style.PointLabelStyle.Font = UIFont.SystemFontOfSize (10); lineSeries1.Style.PointLabelStyle.TextAlignment = UITextAlignment.Center; lineSeries1.Style.PointLabelStyle.TextColor = UIColor.White; lineSeries1.Style.PointLabelStyle.Fill = new TKSolidFill (new UIColor ((float)(241 / 255.0), (float)(140 / 255.0), (float)(133 / 255.0), (float)1.0)); lineSeries1.Style.PointLabelStyle.ClipMode = TKChartPointLabelClipMode.Hidden; TKChartNumericAxis yAxis = new TKChartNumericAxis (new NSNumber (40), new NSNumber (80)); yAxis.MajorTickInterval = new NSNumber (10); chart.YAxis = yAxis; chart.AddSeries (lineSeries); chart.AddSeries (lineSeries1); }
public override void ViewDidLoad() { base.ViewDidLoad(); // >> chart-getting-started-cs TKChart chart = new TKChart(this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview(chart); // << chart-getting-started-cs // >> chart-getting-started-cus-cs chart.Title.Hidden = false; chart.Title.Text = "This is a chart demo"; chart.Legend.Hidden = false; chart.AllowAnimations = true; // << chart-getting-started-cus-cs // >> chart-getting-started-data-cs Random r = new Random(); List <TKChartDataPoint> list = new List <TKChartDataPoint> (); for (int i = 0; i < 12; i++) { list.Add(new TKChartDataPoint(new NSNumber(i), new NSNumber(r.Next() % 2000))); } // << chart-getting-started-data-cs // >> chart-getting-started-series-cs TKChartLineSeries series = new TKChartLineSeries(list.ToArray()); series.SelectionMode = TKChartSeriesSelectionMode.Series; // << chart-getting-started-series-cs TKChartNumericAxis xAxis = new TKChartNumericAxis(); xAxis.Range = new TKRange(new NSNumber(0), new NSNumber(11)); xAxis.Position = TKChartAxisPosition.Bottom; xAxis.MajorTickInterval = 1; chart.XAxis = xAxis; // >> chart-axis-numeric-cs TKChartNumericAxis yAxis = new TKChartNumericAxis(); yAxis.Range = new TKRange(new NSNumber(0), new NSNumber(2000)); yAxis.Position = TKChartAxisPosition.Left; yAxis.MajorTickInterval = 400; yAxis.LabelDisplayMode = TKChartNumericAxisLabelDisplayMode.Percentage; chart.YAxis = yAxis; // << chart-axis-numeric-cs chart.AddSeries(series); }
private void TrySetPointMarkFill(TKChartLineSeries lineSeries, TXFC.CartesianSeries xfSeries) { XF.Color xfColor = EXAMPLE.PointMarksEffect.GetColor(xfSeries); if (xfColor == XF.Color.Default) { return; } lineSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; lineSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new CGSize(10, 10)); lineSeries.Style.Palette = CreatePalette(ColorExtensions.ToUIColor(xfColor)); lineSeries.Style.ShapePalette = lineSeries.Style.Palette; }
void snippet3() { // >> chart-line-series-stroke-cs var seriesForProfit = new TKChartLineSeries(profitData.ToArray()); seriesForProfit.Style.Palette = new TKChartPalette(); var paletteItem = new TKChartPaletteItem(); paletteItem.Stroke = new TKStroke(UIColor.Green); seriesForProfit.Style.Palette.AddPaletteItem(paletteItem); chart.AddSeries(seriesForProfit); // << chart-line-series-stroke-cs }
private void UpdatePointMarkFills() { TXFC.RadCartesianChart xfChart = (TXFC.RadCartesianChart) this.Element; TKExtendedChart nativeChart = (TKExtendedChart)this.Control; for (int i = 0; i < nativeChart.Series.Length; i++) { TKChartLineSeries lineSeries = nativeChart.Series[i] as TKChartLineSeries; if (lineSeries != null) { this.TrySetPointMarkFill(lineSeries, xfChart.Series[i]); } } }
public override TKChartSeries GetSeries(TKChart chart, nuint index) { TKChartSeries series = null; if (index == 2) { series = new TKChartSplineSeries (); } else { series = new TKChartLineSeries (); } series.SelectionMode = TKChartSeriesSelectionMode.Series; series.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new System.Drawing.SizeF (10, 10)); series.Title = string.Format ("Series: {0}", index + 1); return series; }
void snippet1() { // >> getting-started-xamarin-1 chart = new TKChart(this.View.Bounds); this.View.AddSubview(chart); // << getting-started-xamarin-1 // >> chart-line-cs // >> getting-started-xamarin-2 var expensesData = new List <TKChartDataPoint> (); var incomesData = new List <TKChartDataPoint> (); var profitData = new List <TKChartDataPoint> (); var categories = new [] { "Greetings", "Perfecto", "NearBy", "Family Store", "Fresh & Green" }; var expensesValues = new [] { 60, 30, 50, 32, 31 }; var incomesValues = new [] { 65, 75, 58, 59, 88 }; var profitValues = new [] { 5, 45, 8, 27, 57 }; for (int i = 0; i < categories.Length; ++i) { expensesData.Add(new TKChartDataPoint(new NSString(categories [i]), new NSNumber(expensesValues [i]))); incomesData.Add(new TKChartDataPoint(new NSString(categories [i]), new NSNumber(incomesValues [i]))); profitData.Add(new TKChartDataPoint(new NSString(categories [i]), new NSNumber(profitValues [i]))); } // << getting-started-xamarin-2 // >> getting-started-xamarin-3 var seriesForExpenses = new TKChartLineSeries(expensesData.ToArray()); seriesForExpenses.Title = "Expenses"; chart.AddSeries(seriesForExpenses); var seriesForIncomes = new TKChartLineSeries(incomesData.ToArray()); seriesForIncomes.Title = "Incomes"; chart.AddSeries(seriesForIncomes); var seriesForProfit = new TKChartLineSeries(profitData.ToArray()); seriesForProfit.Title = "Profit"; chart.AddSeries(seriesForProfit); // << getting-started-xamarin-3 chart.Legend.Hidden = false; // << chart-line-cs }
public void reloadChart() { chart.RemoveAllData(); List <TKChartDataPoint> array = new List <TKChartDataPoint> (); string[] categories = new [] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }; int[] values = new [] { 65, 56, 65, 38, 56, 78, 62, 89, 78, 65 }; for (int i = 0; i < categories.Length; i++) { if (i == 4 || i == 5) { array.Add(new TKChartDataPoint(new NSString(categories [i]), null)); } else { array.Add(new TKChartDataPoint(new NSString(categories[i]), new NSNumber(values[i]))); } } TKChartLineSeries series = null; switch (this.SelectedOption) { case 0: series = new TKChartLineSeries(array.ToArray()); break; case 1: series = new TKChartSplineSeries(array.ToArray()); break; case 2: series = new TKChartAreaSeries(array.ToArray()); break; case 3: series = new TKChartSplineAreaSeries(array.ToArray()); break; } series.Selection = TKChartSeriesSelection.Series; series.DisplayNilValuesAsGaps = true; chart.AddSeries(series); }
public override TKChartSeries GetSeries(TKChart chart, nuint index) { TKChartSeries series = null; if (index == 2) { series = new TKChartSplineSeries(); } else { series = new TKChartLineSeries(); } series.SelectionMode = TKChartSeriesSelectionMode.Series; series.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new System.Drawing.SizeF(10, 10)); series.Title = string.Format("Series: {0}", index + 1); return(series); }
public void reloadChart(object sender, EventArgs e) { Random r = new Random (); points = new List<TKChartDataPoint> (); for (int i = 0; i < 10; i++) { float x = i * 10; float y = r.Next () % 100; TKChartDataPoint point = new TKChartDataPoint (new NSNumber(x), new NSNumber(y)); points.Add (point); } TKChartLineSeries lineSeries = new TKChartLineSeries (points.ToArray()); float shapeSize = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 14 : 17; lineSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; lineSeries.Style.PointShape = new TKPredefinedShape (TKShapeType.Rhombus, new SizeF (shapeSize, shapeSize)); chart.AddSeries (lineSeries); chart.YAxis.Style.LabelStyle.TextHidden = true; chart.ReloadData (); }
public void reloadChart(object sender, EventArgs e) { chart.RemoveAllData (); List<TKChartDataPoint> array = new List<TKChartDataPoint> (); string[] categories = new []{ "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }; int[] values = new []{ 65, 56, 65, 38, 56, 78, 62, 89, 78, 65 }; for ( int i = 0; i<categories.Length; i++ ) { if (i == 4 || i == 5) { array.Add (new TKChartDataPoint (new NSString (categories [i]), null)); } else { array.Add(new TKChartDataPoint(new NSString(categories[i]), new NSNumber(values[i]))); } } TKChartLineSeries series = null; switch (this.SelectedOption) { case 0: series = new TKChartLineSeries (array.ToArray ()); break; case 1: series = new TKChartSplineSeries (array.ToArray ()); break; case 2: series = new TKChartAreaSeries (array.ToArray()); break; case 3: series = new TKChartSplineAreaSeries (array.ToArray()); break; } series.SelectionMode = TKChartSeriesSelectionMode.Series; series.DisplayNilValuesAsGaps = true; chart.AddSeries (series); }
public void ReloadChart() { chart.RemoveAllData(); Random r = new Random(); for (int i = 0; i < 3; i++) { List <TKChartDataPoint> list = new List <TKChartDataPoint> (); for (int j = 0; j < 8; j++) { list.Add(new TKChartDataPoint(new NSNumber(j + 1), new NSNumber(r.Next() % 100))); } TKChartSeries series = null; switch (this.SelectedOption) { case 0: series = new TKChartLineSeries(list.ToArray()); break; case 1: series = new TKChartSplineSeries(list.ToArray()); break; case 2: series = new TKChartAreaSeries(list.ToArray()); break; case 3: series = new TKChartSplineAreaSeries(list.ToArray()); break; } chart.AddSeries(series); // >> chart-selection-cs series.Selection = TKChartSeriesSelection.Series; // << chart-selection-cs } }
public override void ViewDidLoad() { base.ViewDidLoad (); TKChart chart = new TKChart (this.ExampleBounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview (chart); string[] months = new string[]{ "Jan", "Feb", "Mar", "Apr", "May", "Jun" }; int[] values = new int[]{ 95, 40, 55, 30, 76, 34 }; List<TKChartDataPoint> list = new List<TKChartDataPoint> (); for (int i = 0; i < months.Length; i++) { list.Add (new TKChartDataPoint(new NSString(months[i]), new NSNumber(values[i]))); } TKChartLineSeries series = new TKChartLineSeries (list.ToArray()); series.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF (10, 10)); chart.AddSeries (series); NSMutableParagraphStyle paragraphStyle = (NSMutableParagraphStyle)new NSParagraphStyle ().MutableCopy(); paragraphStyle.Alignment = UITextAlignment.Center; NSMutableDictionary attributes = new NSMutableDictionary (); attributes.Add (UIStringAttributeKey.ForegroundColor, UIColor.White); attributes.Add (UIStringAttributeKey.ParagraphStyle, paragraphStyle); NSMutableAttributedString attributedText = new NSMutableAttributedString ("Important milestone:\n $55000", attributes); attributedText.AddAttribute (UIStringAttributeKey.ForegroundColor, UIColor.Yellow, new NSRange (22, 6)); TKChartBalloonAnnotation balloon = new TKChartBalloonAnnotation (new NSString("Mar"), new NSNumber(55), series); balloon.AttributedText = attributedText; balloon.Style.DistanceFromPoint = 20; balloon.Style.ArrowSize = new Size (10, 10); chart.AddAnnotation (balloon); balloon = new TKChartBalloonAnnotation ("The lowest value:\n $30000", new NSString("Apr"), new NSNumber(30), series); balloon.Style.VerticalAlign = TKChartBalloonVerticalAlignment.Bottom; chart.AddAnnotation (balloon); }
public void UpdateChart (NSTimer tr) { this.chart.RemoveAllData (); Random r = new Random (); TKChartDataPoint dataPoint = new TKChartDataPoint (NSDate.Now, new NSNumber (r.Next () % 70)); this.dataPoints.Add (dataPoint); if (this.dataPoints.Count > 25) { this.dataPoints.RemoveAt (0); } this.chart.YAxis = new TKChartNumericAxis (new NSNumber (0), new NSNumber (100)); TKChartDataPoint firstPoint = this.dataPoints [0]; TKChartDataPoint lastPoint = this.dataPoints [this.dataPoints.Count - 1]; TKChartDateTimeAxis xAxis = new TKChartDateTimeAxis (firstPoint.DataXValue, lastPoint.DataXValue); xAxis.Style.LabelStyle.FitMode = TKChartAxisLabelFitMode.None; xAxis.Style.MajorTickStyle.MaxTickClippingMode = TKChartAxisClippingMode.Visible; xAxis.MajorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Seconds; this.chart.XAxis = xAxis; this.lineSeries = new TKChartLineSeries (this.dataPoints.ToArray ()); this.chart.AddSeries (this.lineSeries); this.chart.ReloadData (); }
public void reloadChart(object sender, EventArgs e) { chart.RemoveAllData(); Random r = new Random(); for (int i = 0; i < 3; i++) { List <TKChartDataPoint> list = new List <TKChartDataPoint> (); for (int j = 0; j < 8; j++) { list.Add(new TKChartDataPoint(new NSNumber(j + 1), new NSNumber(r.Next() % 100))); } TKChartSeries series = null; switch (this.SelectedOption) { case 0: series = new TKChartLineSeries(list.ToArray()); break; case 1: series = new TKChartSplineSeries(list.ToArray()); break; case 2: series = new TKChartAreaSeries(list.ToArray()); break; case 3: series = new TKChartSplineAreaSeries(list.ToArray()); break; } series.SelectionMode = TKChartSeriesSelectionMode.Series; chart.AddSeries(series); } }
public void reloadChart(object sender, EventArgs e) { Random r = new Random(); List <TKChartDataPoint> points = new List <TKChartDataPoint> (); for (int i = 0; i < 10; i++) { float x = i * 10; float y = r.Next() % 100; TKChartDataPoint point = new TKChartDataPoint(new NSNumber(x), new NSNumber(y)); points.Add(point); } TKChartLineSeries lineSeries = new TKChartLineSeries(points.ToArray()); float shapeSize = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 14 : 17; lineSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; lineSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Rhombus, new SizeF(shapeSize, shapeSize)); chart.AddSeries(lineSeries); chart.YAxis.Style.LabelStyle.TextHidden = true; chart.ReloadData(); }
public override void ViewDidLoad() { base.ViewDidLoad(); TKChart chart = new TKChart(this.ExampleBounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview(chart); Random r = new Random(); List <TKChartDataPoint> list = new List <TKChartDataPoint> (); for (int i = 0; i < 12; i++) { list.Add(new TKChartDataPoint(new NSNumber(i), new NSNumber(r.Next() % 2000))); } TKChartLineSeries series = new TKChartLineSeries(list.ToArray()); series.SelectionMode = TKChartSeriesSelectionMode.Series; TKChartNumericAxis xAxis = new TKChartNumericAxis(); xAxis.Range = new TKRange(new NSNumber(0), new NSNumber(11)); xAxis.Position = TKChartAxisPosition.Bottom; xAxis.MajorTickInterval = 1; chart.XAxis = xAxis; TKChartNumericAxis yAxis = new TKChartNumericAxis(); yAxis.Range = new TKRange(new NSNumber(0), new NSNumber(2000)); yAxis.Position = TKChartAxisPosition.Left; yAxis.MajorTickInterval = 400; chart.YAxis = yAxis; chart.AddSeries(series); }
void snippet1() { // >> chart-structure-axes-cs var xAxis = new TKChartNumericAxis(); xAxis.Position = TKChartAxisPosition.Bottom; chart.AddAxis(xAxis); var yAxis1 = new TKChartNumericAxis(new NSNumber(0), new NSNumber(100)); yAxis1.MajorTickInterval = 50; yAxis1.Position = TKChartAxisPosition.Left; yAxis1.Style.LineHidden = false; chart.AddAxis(yAxis1); var yAxis2 = new TKChartNumericAxis(new NSNumber(0), new NSNumber(200)); yAxis2.MajorTickInterval = 50; yAxis2.Position = TKChartAxisPosition.Right; yAxis2.Style.LineHidden = false; chart.AddAxis(yAxis2); var incomesData = new List <TKChartDataPoint> (); var values1 = new [] { 12, 10, 98, 64, 11, 27, 85, 72, 43, 39 }; for (int i = 0; i < 10; i++) { incomesData.Add(new TKChartDataPoint(new NSNumber(i), new NSNumber(values1 [i]))); } var series = new TKChartLineSeries(incomesData.ToArray()); series.XAxis = xAxis; series.YAxis = yAxis1; chart.AddSeries(series); // << chart-structure-axes-cs }
public override void ViewDidLoad() { base.ViewDidLoad (); TKChart chart = new TKChart (this.ExampleBounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview (chart); TKChartNumericAxis gdpInPoundsYAxis = new TKChartNumericAxis (new NSNumber(1050), new NSNumber(1400)); gdpInPoundsYAxis.MajorTickInterval = 50; gdpInPoundsYAxis.Position = TKChartAxisPosition.Left; gdpInPoundsYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; gdpInPoundsYAxis.Style.MajorTickStyle.TicksHidden = false; gdpInPoundsYAxis.Style.LineHidden = false; chart.AddAxis (gdpInPoundsYAxis); chart.YAxis = gdpInPoundsYAxis; TKChartDateTimeAxis periodXAxis = new TKChartDateTimeAxis (); periodXAxis.MajorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Years; periodXAxis.MinorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Years; periodXAxis.MajorTickInterval = 1; periodXAxis.Position = TKChartAxisPosition.Bottom; periodXAxis.PlotMode = TKChartAxisPlotMode.BetweenTicks; chart.AddAxis (periodXAxis); TKChartNumericAxis gdpInvestmentYAxis = new TKChartNumericAxis (new NSNumber(0), new NSNumber(20)); gdpInvestmentYAxis.MajorTickInterval = 5; gdpInvestmentYAxis.Position = TKChartAxisPosition.Right; gdpInvestmentYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; gdpInvestmentYAxis.Style.MajorTickStyle.TicksHidden = false; gdpInvestmentYAxis.Style.LineHidden = false; chart.AddAxis (gdpInvestmentYAxis); TKChartNumericAxis gdpGrowthUpAnnualChangeYAxis = new TKChartNumericAxis (new NSNumber(-6), new NSNumber(4)); gdpGrowthUpAnnualChangeYAxis.MajorTickInterval = 1; gdpGrowthUpAnnualChangeYAxis.Position = TKChartAxisPosition.Right; gdpGrowthUpAnnualChangeYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; gdpGrowthUpAnnualChangeYAxis.Style.MajorTickStyle.TicksHidden = false; gdpGrowthUpAnnualChangeYAxis.Style.LineHidden = false; chart.AddAxis (gdpGrowthUpAnnualChangeYAxis); TKChartNumericAxis grossNationalSavingsAnnualGrowthUpYAxis = new TKChartNumericAxis (new NSNumber(0), new NSNumber(16)); grossNationalSavingsAnnualGrowthUpYAxis.MajorTickInterval = 2; grossNationalSavingsAnnualGrowthUpYAxis.Position = TKChartAxisPosition.Right; grossNationalSavingsAnnualGrowthUpYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; grossNationalSavingsAnnualGrowthUpYAxis.Style.MajorTickStyle.TicksHidden = false; grossNationalSavingsAnnualGrowthUpYAxis.Style.LineHidden = false; chart.AddAxis (grossNationalSavingsAnnualGrowthUpYAxis); NSDate date2001 = DateWithYear (2001, 12, 31); NSDate date2002 = DateWithYear (2002, 12, 31); NSDate date2003 = DateWithYear (2003, 12, 31); NSDate date2004 = DateWithYear (2004, 12, 31); NSDate date2005 = DateWithYear (2005, 12, 31); TKChartDataPoint[] gdpInPounds = new TKChartDataPoint[] { new TKChartDataPoint(date2001, new NSNumber(1200)), new TKChartDataPoint(date2002, new NSNumber(1200)), new TKChartDataPoint(date2003, new NSNumber(1225)), new TKChartDataPoint(date2004, new NSNumber(1300)), new TKChartDataPoint(date2005, new NSNumber(1350)) }; TKChartColumnSeries gdpInPoundsSeries = new TKChartColumnSeries (gdpInPounds); gdpInPoundsSeries.XAxis = periodXAxis; gdpInPoundsSeries.YAxis = gdpInPoundsYAxis; gdpInPoundsSeries.SelectionMode = TKChartSeriesSelectionMode.Series; chart.AddSeries (gdpInPoundsSeries); TKChartDataPoint[] gdpGrowthUpAnnual = new TKChartDataPoint[] { new TKChartDataPoint (date2001, new NSNumber (4)), new TKChartDataPoint (date2002, new NSNumber (3)), new TKChartDataPoint (date2003, new NSNumber (2)), new TKChartDataPoint (date2004, new NSNumber (-5)), new TKChartDataPoint (date2005, new NSNumber (1)) }; float shapeSize = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 7 : 17; TKChartLineSeries gdpGrowthUpSeries = new TKChartLineSeries (gdpGrowthUpAnnual); gdpGrowthUpSeries.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF (shapeSize, shapeSize)); gdpGrowthUpSeries.XAxis = periodXAxis; gdpGrowthUpSeries.YAxis = gdpGrowthUpAnnualChangeYAxis; gdpGrowthUpSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; gdpGrowthUpSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; chart.AddSeries (gdpGrowthUpSeries); TKChartDataPoint[] grossAnualSavings = new TKChartDataPoint[] { new TKChartDataPoint (date2001, new NSNumber (14)), new TKChartDataPoint (date2002, new NSNumber (8)), new TKChartDataPoint (date2003, new NSNumber (12)), new TKChartDataPoint (date2004, new NSNumber (11)), new TKChartDataPoint (date2005, new NSNumber (16)) }; TKChartLineSeries grossAnualSavingsSeries = new TKChartLineSeries (grossAnualSavings); grossAnualSavingsSeries.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF(shapeSize, shapeSize)); grossAnualSavingsSeries.XAxis = periodXAxis; grossAnualSavingsSeries.YAxis = grossNationalSavingsAnnualGrowthUpYAxis; grossAnualSavingsSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; grossAnualSavingsSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; chart.AddSeries (grossAnualSavingsSeries); TKChartDataPoint[] gdpInvestment = new TKChartDataPoint[] { new TKChartDataPoint (date2001, new NSNumber (15)), new TKChartDataPoint (date2002, new NSNumber (13)), new TKChartDataPoint (date2003, new NSNumber (16)), new TKChartDataPoint (date2004, new NSNumber (19)), new TKChartDataPoint (date2005, new NSNumber (15)) }; TKChartLineSeries gdpInvestmentSeries = new TKChartLineSeries (gdpInvestment); gdpInvestmentSeries.Style.PointShape = new TKPredefinedShape (TKShapeType.Circle, new SizeF(shapeSize, shapeSize)); gdpInvestmentSeries.XAxis = periodXAxis; gdpInvestmentSeries.YAxis = gdpInvestmentYAxis; gdpInvestmentSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; gdpInvestmentSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; chart.AddSeries (gdpInvestmentSeries); this.setStyles (gdpInPoundsSeries); this.setStyles (grossAnualSavingsSeries); this.setStyles (gdpGrowthUpSeries); this.setStyles (gdpInvestmentSeries); chart.ReloadData (); }
public override void ViewDidLoad () { base.ViewDidLoad (); var chart = new TKChart (this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.Add (chart); string url = "http://www.telerik.com/docs/default-source/ui-for-ios/weather.json?sfvrsn=2"; dataSource.LoadDataFromURL (url, TKDataSourceDataFormat.JSON, "dayList", (NSError err) => { if (err != null) { Console.WriteLine("Can't connect with the server!"); return; } dataSource.Settings.Chart.CreateSeries((TKDataSourceGroup group) => { TKChartSeries series = null; if (group.ValueKey == "clouds") { series = new TKChartColumnSeries(); series.YAxis = new TKChartNumericAxis(NSObject.FromObject(0), NSObject.FromObject(100)); series.YAxis.Title = "clouds"; series.YAxis.Style.TitleStyle.RotationAngle = (float)Math.PI/2.0f; } else { series = new TKChartLineSeries(); series.YAxis = new TKChartNumericAxis(NSObject.FromObject(-10), NSObject.FromObject(30)); if (group.ValueKey == "temp.min") { series.YAxis.Position = TKChartAxisPosition.Right; series.YAxis.Title = "temperature"; series.YAxis.Style.TitleStyle.RotationAngle = (float)Math.PI/2.0f; chart.AddAxis(series.YAxis); } } return series; }); dataSource.Map((NSObject item) => { double interval = ((NSNumber)item.ValueForKey(new NSString("dateTime"))).DoubleValue; NSDate date = NSDate.FromTimeIntervalSince1970(interval); item.SetValueForKey(date, new NSString("dateTime")); return item; }); NSObject[] items = this.dataSource.Items; NSMutableArray newItems = new NSMutableArray(); newItems.Add(new TKDataSourceGroup(items, "clouds", "dateTime")); newItems.Add(new TKDataSourceGroup(items, "temp.min", "dateTime")); newItems.Add(new TKDataSourceGroup(items, "temp.max", "dateTime")); dataSource.ItemSource = newItems; chart.DataSource = dataSource; var formatter = new NSDateFormatter(); formatter.DateFormat = "dd"; TKChartDateTimeAxis xAxis = (TKChartDateTimeAxis)chart.XAxis; xAxis.MajorTickInterval = 1; xAxis.PlotMode = TKChartAxisPlotMode.BetweenTicks; xAxis.LabelFormatter = formatter; xAxis.Title = "date"; xAxis.MinorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Days; }); }
public MainPage() { InitializeComponent(); #if __IOS__ // UI FOR XAMARIN iOS native controls RootGrid.Padding = new Thickness(0, 20, 0, 0); var explanation1 = new UILabel { MinimumFontSize = 14f, Lines = 0, LineBreakMode = UILineBreakMode.WordWrap, Text = "This is the native iOS TKChart", }; HeaderGrid.Children.Add(explanation1); // Chart TKChart chart = new TKChart(); chart.AllowAnimations = true; chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; // Sample Data Random r = new Random(); var list = Enumerable.Range(1, 12).Select(i => new TKChartDataPoint(new NSNumber(i), new NSNumber(r.Next() % 2000))).ToArray(); // Add Series TKChartLineSeries series = new TKChartLineSeries(list); series.Selection = TKChartSeriesSelection.Series; chart.AddSeries(series); BodyGrid.Children.Add(chart); #endif #if __ANDROID__ // UI FOR XAMARIN Android native controls HeaderGrid.Children.Add(new TextView(Forms.Context) { Text = "This is the native Android RadCartesianChartView", TextSize = 14 }); RadCartesianChartView chartView = new RadCartesianChartView(Forms.Context); chartView.HorizontalAxis = new CategoricalAxis(); chartView.VerticalAxis = new LinearAxis(); // Sample Data var monthResults = new Java.Util.ArrayList(); monthResults.Add(new MonthResult("Jan", 12)); monthResults.Add(new MonthResult("Feb", 5)); monthResults.Add(new MonthResult("Mar", 10)); monthResults.Add(new MonthResult("Apr", 7)); chartView.Series.Add(new LineSeries { CategoryBinding = new MonthResultDataBinding("Month"), ValueBinding = new MonthResultDataBinding("Result"), Data = monthResults }); BodyGrid.Children.Add(chartView); #endif #if WINDOWS_UWP // UI FOR XAMARIN UWP native controls var explanation1 = new TextBlock { Text = "The next control is a CustomControl (a customized TextBlock with a bad ArrangeOverride implementation).", FontSize = 14, FontFamily = new FontFamily("HelveticaNeue"), TextWrapping = TextWrapping.Wrap }; HeaderGrid.Children.Add(explanation1); // Set up chart var chartView = new RadCartesianChart(); chartView.HorizontalAxis = new CategoricalAxis(); chartView.VerticalAxis = new LinearAxis(); // sample data var monthResults = new List <MonthResult> { new MonthResult("Jan", 12), new MonthResult("Feb", 5), new MonthResult("Mar", 10), new MonthResult("Apr", 7) }; chartView.Series.Add(new LineSeries { CategoryBinding = new PropertyNameDataPointBinding("Month"), ValueBinding = new PropertyNameDataPointBinding("Result"), ItemsSource = monthResults }); // Add native chart to Visual Tree BodyGrid.Children.Add(chartView); #endif }
public override void ViewDidLoad() { base.ViewDidLoad(); TKChart chart = new TKChart(this.ExampleBounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.AddSubview(chart); TKChartNumericAxis gdpInPoundsYAxis = new TKChartNumericAxis(new NSNumber(1050), new NSNumber(1400)); gdpInPoundsYAxis.MajorTickInterval = 50; gdpInPoundsYAxis.Position = TKChartAxisPosition.Left; gdpInPoundsYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; gdpInPoundsYAxis.Style.MajorTickStyle.TicksHidden = false; gdpInPoundsYAxis.Style.LineHidden = false; chart.AddAxis(gdpInPoundsYAxis); chart.YAxis = gdpInPoundsYAxis; TKChartDateTimeAxis periodXAxis = new TKChartDateTimeAxis(); periodXAxis.MajorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Years; periodXAxis.MinorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Years; periodXAxis.MajorTickInterval = 1; periodXAxis.Position = TKChartAxisPosition.Bottom; periodXAxis.PlotMode = TKChartAxisPlotMode.BetweenTicks; chart.AddAxis(periodXAxis); TKChartNumericAxis gdpInvestmentYAxis = new TKChartNumericAxis(new NSNumber(0), new NSNumber(20)); gdpInvestmentYAxis.MajorTickInterval = 5; gdpInvestmentYAxis.Position = TKChartAxisPosition.Right; gdpInvestmentYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; gdpInvestmentYAxis.Style.MajorTickStyle.TicksHidden = false; gdpInvestmentYAxis.Style.LineHidden = false; chart.AddAxis(gdpInvestmentYAxis); TKChartNumericAxis gdpGrowthUpAnnualChangeYAxis = new TKChartNumericAxis(new NSNumber(-6), new NSNumber(4)); gdpGrowthUpAnnualChangeYAxis.MajorTickInterval = 1; gdpGrowthUpAnnualChangeYAxis.Position = TKChartAxisPosition.Right; gdpGrowthUpAnnualChangeYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; gdpGrowthUpAnnualChangeYAxis.Style.MajorTickStyle.TicksHidden = false; gdpGrowthUpAnnualChangeYAxis.Style.LineHidden = false; chart.AddAxis(gdpGrowthUpAnnualChangeYAxis); TKChartNumericAxis grossNationalSavingsAnnualGrowthUpYAxis = new TKChartNumericAxis(new NSNumber(0), new NSNumber(16)); grossNationalSavingsAnnualGrowthUpYAxis.MajorTickInterval = 2; grossNationalSavingsAnnualGrowthUpYAxis.Position = TKChartAxisPosition.Right; grossNationalSavingsAnnualGrowthUpYAxis.Style.LabelStyle.TextAlignment = TKChartAxisLabelAlignment.Left; grossNationalSavingsAnnualGrowthUpYAxis.Style.MajorTickStyle.TicksHidden = false; grossNationalSavingsAnnualGrowthUpYAxis.Style.LineHidden = false; chart.AddAxis(grossNationalSavingsAnnualGrowthUpYAxis); NSDate date2001 = DateWithYear(2001, 12, 31); NSDate date2002 = DateWithYear(2002, 12, 31); NSDate date2003 = DateWithYear(2003, 12, 31); NSDate date2004 = DateWithYear(2004, 12, 31); NSDate date2005 = DateWithYear(2005, 12, 31); TKChartDataPoint[] gdpInPounds = new TKChartDataPoint[] { new TKChartDataPoint(date2001, new NSNumber(1200)), new TKChartDataPoint(date2002, new NSNumber(1200)), new TKChartDataPoint(date2003, new NSNumber(1225)), new TKChartDataPoint(date2004, new NSNumber(1300)), new TKChartDataPoint(date2005, new NSNumber(1350)) }; TKChartColumnSeries gdpInPoundsSeries = new TKChartColumnSeries(gdpInPounds); gdpInPoundsSeries.XAxis = periodXAxis; gdpInPoundsSeries.YAxis = gdpInPoundsYAxis; gdpInPoundsSeries.SelectionMode = TKChartSeriesSelectionMode.Series; chart.AddSeries(gdpInPoundsSeries); TKChartDataPoint[] gdpGrowthUpAnnual = new TKChartDataPoint[] { new TKChartDataPoint(date2001, new NSNumber(4)), new TKChartDataPoint(date2002, new NSNumber(3)), new TKChartDataPoint(date2003, new NSNumber(2)), new TKChartDataPoint(date2004, new NSNumber(-5)), new TKChartDataPoint(date2005, new NSNumber(1)) }; float shapeSize = UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone ? 7 : 17; TKChartLineSeries gdpGrowthUpSeries = new TKChartLineSeries(gdpGrowthUpAnnual); gdpGrowthUpSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(shapeSize, shapeSize)); gdpGrowthUpSeries.XAxis = periodXAxis; gdpGrowthUpSeries.YAxis = gdpGrowthUpAnnualChangeYAxis; gdpGrowthUpSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; gdpGrowthUpSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; chart.AddSeries(gdpGrowthUpSeries); TKChartDataPoint[] grossAnualSavings = new TKChartDataPoint[] { new TKChartDataPoint(date2001, new NSNumber(14)), new TKChartDataPoint(date2002, new NSNumber(8)), new TKChartDataPoint(date2003, new NSNumber(12)), new TKChartDataPoint(date2004, new NSNumber(11)), new TKChartDataPoint(date2005, new NSNumber(16)) }; TKChartLineSeries grossAnualSavingsSeries = new TKChartLineSeries(grossAnualSavings); grossAnualSavingsSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(shapeSize, shapeSize)); grossAnualSavingsSeries.XAxis = periodXAxis; grossAnualSavingsSeries.YAxis = grossNationalSavingsAnnualGrowthUpYAxis; grossAnualSavingsSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; grossAnualSavingsSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; chart.AddSeries(grossAnualSavingsSeries); TKChartDataPoint[] gdpInvestment = new TKChartDataPoint[] { new TKChartDataPoint(date2001, new NSNumber(15)), new TKChartDataPoint(date2002, new NSNumber(13)), new TKChartDataPoint(date2003, new NSNumber(16)), new TKChartDataPoint(date2004, new NSNumber(19)), new TKChartDataPoint(date2005, new NSNumber(15)) }; TKChartLineSeries gdpInvestmentSeries = new TKChartLineSeries(gdpInvestment); gdpInvestmentSeries.Style.PointShape = new TKPredefinedShape(TKShapeType.Circle, new SizeF(shapeSize, shapeSize)); gdpInvestmentSeries.XAxis = periodXAxis; gdpInvestmentSeries.YAxis = gdpInvestmentYAxis; gdpInvestmentSeries.SelectionMode = TKChartSeriesSelectionMode.DataPoint; gdpInvestmentSeries.Style.ShapeMode = TKChartSeriesStyleShapeMode.AlwaysShow; chart.AddSeries(gdpInvestmentSeries); this.setStyles(gdpInPoundsSeries); this.setStyles(grossAnualSavingsSeries); this.setStyles(gdpGrowthUpSeries); this.setStyles(gdpInvestmentSeries); chart.ReloadData(); }
void LoadLineSeries(object sender, EventArgs e) { chart.RemoveAllData (); TKChartLineSeries lineSeries = new TKChartLineSeries (lineData.ToArray ()); lineSeries.Style.PointLabelStyle.TextHidden = false; lineSeries.Style.PointLabelStyle.LabelOffset = new UIOffset (0, 15); lineSeries.Style.PointLabelStyle.Font = UIFont.SystemFontOfSize (9); chart.AddSeries (lineSeries); chart.ReloadData (); }
public override void ViewDidLoad() { base.ViewDidLoad(); var chart = new TKChart(this.View.Bounds); chart.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight; this.View.Add(chart); string url = "http://www.telerik.com/docs/default-source/ui-for-ios/weather.json?sfvrsn=2"; dataSource.LoadDataFromURL(url, TKDataSourceDataFormat.JSON, "dayList", (NSError err) => { if (err != null) { Console.WriteLine("Can't connect with the server!"); return; } dataSource.Settings.Chart.CreateSeries((TKDataSourceGroup group) => { TKChartSeries series = null; if (group.ValueKey == "clouds") { series = new TKChartColumnSeries(); series.YAxis = new TKChartNumericAxis(NSObject.FromObject(0), NSObject.FromObject(100)); series.YAxis.Title = "clouds"; series.YAxis.Style.TitleStyle.RotationAngle = (float)Math.PI / 2.0f; } else { series = new TKChartLineSeries(); series.YAxis = new TKChartNumericAxis(NSObject.FromObject(-10), NSObject.FromObject(30)); if (group.ValueKey == "temp.min") { series.YAxis.Position = TKChartAxisPosition.Right; series.YAxis.Title = "temperature"; series.YAxis.Style.TitleStyle.RotationAngle = (float)Math.PI / 2.0f; chart.AddAxis(series.YAxis); } } return(series); }); dataSource.Map((NSObject item) => { double interval = ((NSNumber)item.ValueForKey(new NSString("dateTime"))).DoubleValue; NSDate date = NSDate.FromTimeIntervalSince1970(interval); item.SetValueForKey(date, new NSString("dateTime")); return(item); }); NSObject[] items = this.dataSource.Items; NSMutableArray newItems = new NSMutableArray(); newItems.Add(new TKDataSourceGroup(items, "clouds", "dateTime")); newItems.Add(new TKDataSourceGroup(items, "temp.min", "dateTime")); newItems.Add(new TKDataSourceGroup(items, "temp.max", "dateTime")); dataSource.ItemSource = newItems; chart.DataSource = dataSource; var formatter = new NSDateFormatter(); formatter.DateFormat = "dd"; TKChartDateTimeAxis xAxis = (TKChartDateTimeAxis)chart.XAxis; xAxis.MajorTickInterval = 1; xAxis.PlotMode = TKChartAxisPlotMode.BetweenTicks; xAxis.LabelFormatter = formatter; xAxis.Title = "date"; xAxis.MinorTickIntervalUnit = TKChartDateTimeAxisIntervalUnit.Days; }); }