public void Initialize() { SfCircularGauge dcgCpuUsage = new SfCircularGauge(); TextBlock tbCpuUsageHeader = new TextBlock() { Text = "CPU (%)", FontSize = 15, Foreground = new SolidColorBrush(Colors.Black) }; dcgCpuUsage.GaugeHeader = tbCpuUsageHeader; dcgCpuUsage.HeaderAlignment = HeaderAlignment.Custom; dcgCpuUsage.GaugeHeaderPosition = new Point(0.35, 0.70); dcgCpuUsage.Scales = new System.Collections.ObjectModel.ObservableCollection <CircularScale>(); CircularScale csItem = new CircularScale(); csItem.StartValue = 0; csItem.EndValue = 100; csItem.SweepAngle = 270; csItem.Interval = 10; csItem.MinorTicksPerInterval = 4; csItem.Ranges = new CircularRangeCollection(); csItem.Ranges.Add(new CircularRange() { StartValue = 0, EndValue = 85, Stroke = new LinearGradientBrush(Colors.LightGreen, Colors.DarkGreen, 45), }); csItem.Ranges.Add(new CircularRange() { StartValue = 85, EndValue = 95, Stroke = new LinearGradientBrush(Colors.Yellow, Colors.Orange, 45), }); csItem.Ranges.Add(new CircularRange() { StartValue = 95, EndValue = 100, Stroke = new LinearGradientBrush(Colors.Red, Colors.DarkRed, 45), }); csItem.Pointers.Add(new CircularPointer() { PointerType = PointerType.NeedlePointer, Value = 0, NeedlePointerType = NeedlePointerType.Triangle, NeedlePointerStrokeThickness = 15, NeedlePointerStroke = new LinearGradientBrush(Colors.DarkGray, Colors.Black, 45), PointerCapStroke = new SolidColorBrush(Colors.Black) }); dcgCpuUsage.Scales.Add(csItem); this.Control = dcgCpuUsage; }
public override void Refresh() { if (this.Control is SfCircularGauge) { SfCircularGauge dcgCpuUsage = this.Control as SfCircularGauge; int cpuTotalValue = Convert.ToInt32(Math.Round(cpuTotalCntr.NextValue(), 0)); dcgCpuUsage.Scales[0].Pointers[0].Value = cpuTotalValue; } }
public SfCircularGauge getMemoryGauge() { circularGaugeMemory = new SfCircularGauge(); //circularGaugeMemory.GaugeHeight = Device.OnPlatform(iOS: 250, Android: 300, WinPhone: 200); //circularGaugeMemory.GaugeWidth = 300; //circularGaugeMemory.BackColor = Device.OnPlatform(iOS: Color.White, Android: Color.Black, WinPhone: Color.Black); //List<Scale> Scales = new List<Scale>(); //Scale scale = new Scale(); //scale.StartValue = 0; //scale.EndValue = 100; //scale.StartAngle = 180; //scale.SweepAngle = 180; //scale.Interval = 110; //scale.MinorTicksPerInterval = 0; //scale.LabelColor = Color.Transparent; //scale.MajorTickColor = Color.Transparent; //scale.LabelSize = 1; //scale.RimThickness = 40; //scale.MajorTicksHeight = 0; //scale.MinorTicksHeight = 0; //scale.RimColor = Color.FromHex("#FF565656"); //Pointer pointer = new Pointer(); //pointer.Value = 70; //pointer.NeedlePointerThickness = 10; //pointer.NeedlePointerColor = Color.FromHex("#FFE2E2E2"); //pointer.NeedlePointerFactor = 1.2; //pointer.PointerKnobColor = Color.FromHex("#FFE2E2E2"); //pointer.PointerKnobRadius = 30; //Pointer rPointer = new Pointer(); //rPointer.Value = 70; //rPointer.IsNeedlePointer = false; //rPointer.RangePointerColor = Color.FromHex("#FF00B2DB"); //rPointer.RangePointerThickness = 40; //rPointer.NeedlePointerFactor = 0; //Pointer dot = new Pointer(); //dot.Value = 60; //dot.NeedlePointerThickness = 0; //dot.PointerKnobColor = Color.Black; //dot.PointerKnobRadius = 10; //dot.NeedlePointerFactor = 0; //List<Pointer> pointers = new List<Pointer>(); //pointers.Add(rPointer); //pointers.Add(pointer); //pointers.Add(dot); //scale.Pointers = pointers; //Scales.Add(scale); //circularGaugeMemory.Scales = Scales; return circularGaugeMemory; }
private void circularGauge1_Loaded(object sender, RoutedEventArgs e) { Double sum = 0; MyDataCollection coll = this.FindResource("SeriesData1") as MyDataCollection; int i = 1; grid.Model[i, 1].CellValue = "Year"; grid.Model[i, 1].HorizontalAlignment = HorizontalAlignment.Center; grid.Model[i, 1].Background = Brushes.Pink; grid.Model[i, 1].Font.FontWeight = FontWeights.Bold; grid.Model[i, 2].CellValue = "Revenue of the Year($ 1000)"; grid.Model[i, 2].HorizontalAlignment = HorizontalAlignment.Center; grid.Model[i, 2].Background = Brushes.Pink; grid.Model[i, 2].Font.FontWeight = FontWeights.Bold; i++; if (coll != null) { foreach (MyData d in coll) { sum += d.Y1; grid.Model[i, 1].CellValue = d.Year; grid.Model[i, 1].HorizontalAlignment = HorizontalAlignment.Center; grid.Model[i, 1].Background = Brushes.Pink; grid.Model[i, 1].Font.FontWeight = FontWeights.Bold; grid.Model[i, 2].CellValue = "$" + d.Y1; grid.Model[i, 2].HorizontalAlignment = HorizontalAlignment.Center; grid.Model[i, 2].Background = Brushes.Pink; grid.Model[i, 2].Font.FontWeight = FontWeights.Bold; i++; } } grid.Model[i, 1].CellValue = "Gauge indicating Average sales during the year 2003-2007"; grid.Model[i, 1].HorizontalAlignment = HorizontalAlignment.Center; grid.Model[i, 1].Font.FontWeight = FontWeights.Bold; SfCircularGauge cg = (sender as UserControl).Content as SfCircularGauge; _circulargauge = cg; CircularScale cs = cg.FindName("m_scale") as CircularScale; if (cs != null) { _circularpointer = cs.Pointers[0]; cs.Pointers[0].Value = sum / 5; } }
public override void Refresh() { if (this.Control is SfCircularGauge) { SfCircularGauge dcgRamUsage = this.Control as SfCircularGauge; long valRamTotalMemory = PerformanceInfo.GetTotalMemoryInMiB(); long valRamTotal = PerformanceInfo.GetTotalMemoryInMiB() - PerformanceInfo.GetPhysicalAvailableMemoryInMiB(); int valRamTakenPrc = Convert.ToInt32(((double)valRamTotal / (double)valRamTotalMemory) * 100.0); dcgRamUsage.Scales[0].Pointers[0].Value = valRamTakenPrc; (dcgRamUsage.GaugeHeader as TextBlock).Text = String.Format("RAM %{0}({1:0.00} {2})", Environment.NewLine, valRamTotal > 1024 ? Math.Round(valRamTotal / 1024.0, 2) : valRamTotal, valRamTotal > 1024 ? "GB" : "MB"); } }
public override View GetSampleContent(Context con) { SfCircularGauge sfCircularGauge = new SfCircularGauge(con); ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); CircularScale scale = new CircularScale(); scale.StartValue = 0; scale.EndValue = 100; scale.Interval = 10; scale.StartAngle = 135; scale.SweepAngle = 270; scale.RimWidth = 10; scale.RimColor = Color.ParseColor("#E0E0E0"); scale.LabelColor = Color.Black; scale.LabelOffset = 0.8; scale.ShowTicks = false; scale.MinorTicksPerInterval = 0; ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); pointer = new NeedlePointer(); pointer.Value = 60; pointer.KnobRadius = 10; pointer.Color = Color.ParseColor("#757575"); pointer.KnobColor = Color.ParseColor("#757575"); pointer.LengthFactor = 0.6; pointer.Type = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle; pointers.Add(pointer); scale.CircularPointers = pointers; circularScales.Add(scale); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(sfCircularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return(linearLayout); }
public SalesAnalysisDemo() { this.InitializeComponent(); this.Unloaded += SalesAnalysisDemo_Unloaded; revenueChart = grid.FindName("revenueChart") as UI.Xaml.Charts.SfChart; revenueChart.SelectionChanged += RevenueChart_SelectionChanged; if (AnalyticsInfo.VersionInfo.DeviceFamily != "Windows.Mobile") { chart1 = chart.FindName("sfchart") as UI.Xaml.Charts.SfChart; gauge1 = gauge.FindName("SalesGauge") as SfCircularGauge; gauge2 = gauge.FindName("SalesGauge2") as SfCircularGauge; gauge3 = gauge.FindName("SalesGauge3") as SfCircularGauge; gauge4 = gauge.FindName("SalesGauge4") as SfCircularGauge; revenueChart.Loaded += dataGrid_Loaded; } rangeNavigator = navigator.FindName("chart_navigator") as SfDateTimeRangeNavigator; rangeNavigator.Loaded += RangeNavigator_Loaded; rangeNavigator.ValueChanged += rangeNavigator_ValueChanged; }
public override View GetSampleContent(Context con) { var density = con.Resources.DisplayMetrics.Density; LabelAnnotation1 = new TextView(con); LabelAnnotation1.Text = "4:55PM"; LabelAnnotation1.TextSize = 14; LabelAnnotation1.SetHeight(25); LabelAnnotation1.SetWidth(75); LabelAnnotation1.SetTextColor(Color.Black); LabelAnnotation1.TextAlignment = TextAlignment.Center; LabelAnnotation2 = new TextView(con); LabelAnnotation2.Text = "10s"; LabelAnnotation2.TextSize = 12; LabelAnnotation2.SetHeight(20); LabelAnnotation2.SetWidth(35); LabelAnnotation2.SetTextColor(Color.Black); LabelAnnotation2.TextAlignment = TextAlignment.Center; LabelAnnotation3 = new TextView(con); LabelAnnotation3.Text = "55M"; LabelAnnotation3.TextSize = 12; LabelAnnotation3.SetHeight(20); LabelAnnotation3.SetWidth(35); LabelAnnotation3.SetTextColor(Color.Black); LabelAnnotation3.TextAlignment = TextAlignment.Center; Annotation1 = new SfCircularGauge(con) { Annotations = new CircularGaugeAnnotationCollection { new GaugeAnnotation { View = LabelAnnotation2, Angle = 250, Offset = 0.7f } }, CircularScales = new ObservableCollection <CircularScale> { new CircularScale { StartAngle = 270, SweepAngle = 360, ShowLabels = false, StartValue = 0, EndValue = 60, Interval = 5, RimColor = Color.Rgb(237, 238, 239), CircularRanges = new ObservableCollection <CircularRange> { new CircularRange { StartValue = 0, EndValue = 30, Color = Color.Gray, InnerStartOffset = 0.925, OuterStartOffset = 1, InnerEndOffset = 0.925, OuterEndOffset = 1 }, }, MajorTickSettings = new TickSetting { Color = Color.Black, StartOffset = 1, EndOffset = .85, Width = 2 }, MinorTickSettings = new TickSetting { Color = Color.Black, StartOffset = 1, EndOffset = .90, Width = 0.5 }, CircularPointers = new ObservableCollection <CircularPointer> { new NeedlePointer { Type = NeedleType.Triangle, KnobRadius = 4, Width = 3, EnableAnimation = false, KnobColor = Color.Black, Color = Color.Black } } } } }; LinearLayout layout1 = new LinearLayout(con); layout1.LayoutParameters = new LinearLayout.LayoutParams((int)(80 * density), (int)(80 * density)); layout1.AddView(Annotation1); Annotation2 = new SfCircularGauge(con) { Annotations = new CircularGaugeAnnotationCollection { new GaugeAnnotation { View = LabelAnnotation3, Angle = 245, Offset = 0.7f } }, CircularScales = new ObservableCollection <CircularScale> { new CircularScale { StartAngle = 270, SweepAngle = 360, StartValue = 0, EndValue = 60, Interval = 5, ShowLabels = false, RimColor = Color.Rgb(237, 238, 239), CircularRanges = new ObservableCollection <CircularRange> { new CircularRange { StartValue = 0, EndValue = 30, Color = Color.Gray, InnerStartOffset = 0.925, OuterStartOffset = 1, InnerEndOffset = 0.925, OuterEndOffset = 1 }, }, MajorTickSettings = new TickSetting { Color = Color.Black, StartOffset = 1, EndOffset = .85, Width = 2 }, MinorTickSettings = new TickSetting { Color = Color.Black, StartOffset = 1, EndOffset = .90, Width = 0.5 }, CircularPointers = new ObservableCollection <CircularPointer> { new NeedlePointer { Type = NeedleType.Triangle, KnobRadius = 4, Width = 3, EnableAnimation = false, KnobColor = Color.Black, Color = Color.Black } } } } }; LinearLayout layout2 = new LinearLayout(con); layout2.LayoutParameters = new LinearLayout.LayoutParams((int)(80 * density), (int)(80 * density)); layout2.AddView(Annotation2); Gauge = new SfCircularGauge(con) { Annotations = new CircularGaugeAnnotationCollection { new GaugeAnnotation { View = layout1, Angle = 90, Offset = .5f }, new GaugeAnnotation { View = LabelAnnotation1, Angle = 00, Offset = .3f }, new GaugeAnnotation { View = layout2, Angle = 180, Offset = .5f }, }, CircularScales = new ObservableCollection <CircularScale> { new CircularScale { StartValue = 0, EndValue = 12, Interval = 1, MinorTicksPerInterval = 4, RimColor = Color.Rgb(237, 238, 239), LabelColor = Color.Gray, LabelOffset = .8, ScaleEndOffset = .925, StartAngle = 270, SweepAngle = 360, LabelTextSize = 14, ShowFirstLabel = false, MinorTickSettings = new TickSetting { Color = Color.Black, StartOffset = 1, EndOffset = .95, Width = 1 }, MajorTickSettings = new TickSetting { Color = Color.Black, StartOffset = 1, EndOffset = .9, Width = 3 }, CircularRanges = new ObservableCollection <CircularRange> { new CircularRange { StartValue = 0, EndValue = 3, Color = Color.Gray, InnerStartOffset = 0.925, OuterStartOffset = 1, InnerEndOffset = 0.925, OuterEndOffset = 1 }, }, CircularPointers = new ObservableCollection <CircularPointer> { new NeedlePointer { EnableAnimation = false, KnobRadius = 6, LengthFactor = .75, KnobColor = Color.White, Color = Color.Black, Width = 3.5, KnobStrokeColor = Color.Black, KnobStrokeWidth = 5, TailLengthFactor = 0.25, TailColor = Color.Black }, new NeedlePointer { EnableAnimation = false, KnobRadius = 6, LengthFactor = .4, KnobColor = Color.White, Color = Color.Black, Width = 5, Type = NeedleType.Triangle }, new NeedlePointer { EnableAnimation = false, KnobRadius = 6, LengthFactor = .65, KnobColor = Color.White, Color = Color.Black, Width = 5, Type = NeedleType.Triangle }, } } } }; DynamicUpdate(); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(Gauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return(linearLayout); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SfCircularGauge circularGauge = new SfCircularGauge(this); circularGauge.SetBackgroundColor(Color.White); ObservableCollection <CircularScale> scales = new ObservableCollection <CircularScale>(); CircularScale scale1 = new CircularScale(); scale1.ShowTicks = false; scale1.StartValue = 0; scale1.EndValue = 100; scale1.StartAngle = 160; scale1.SweepAngle = 220; scale1.ShowLabels = false; scale1.RimColor = Color.ParseColor("#f4deeb"); scale1.ScaleStartOffset = 0.9; scale1.ScaleEndOffset = 0.5; CircularRange range1 = new CircularRange(); range1.StartValue = 0; range1.EndValue = 70; range1.OuterStartOffset = 0.9; range1.OuterEndOffset = 0.9; range1.InnerStartOffset = 0.7; range1.InnerEndOffset = 0.7; scale1.CircularRanges.Add(range1); ObservableCollection <GaugeGradientStop> gradientColor1 = new ObservableCollection <GaugeGradientStop>(); GaugeGradientStop gaugeGradientStop = new GaugeGradientStop(); gaugeGradientStop.Value = 0; gaugeGradientStop.Color = Color.WhiteSmoke; gradientColor1.Add(gaugeGradientStop); GaugeGradientStop gaugeGradientStop1 = new GaugeGradientStop(); gaugeGradientStop1.Value = 50; gaugeGradientStop1.Color = Color.Olive; gradientColor1.Add(gaugeGradientStop1); CircularRange range2 = new CircularRange(); range2.StartValue = 0; range2.EndValue = 40; range2.OuterStartOffset = 0.7; range2.OuterEndOffset = 0.7; range2.InnerStartOffset = 0.5; range2.InnerEndOffset = 0.5; ObservableCollection <GaugeGradientStop> gradientColor2 = new ObservableCollection <GaugeGradientStop>(); GaugeGradientStop gaugeGradientStop2 = new GaugeGradientStop(); gaugeGradientStop2.Value = 0; gaugeGradientStop2.Color = Color.ParseColor("#d5f7cd"); gradientColor2.Add(gaugeGradientStop2); GaugeGradientStop gaugeGradientStop3 = new GaugeGradientStop(); gaugeGradientStop3.Value = 20; gaugeGradientStop3.Color = Color.ParseColor("#5af736"); gradientColor2.Add(gaugeGradientStop3); GaugeGradientStop gaugeGradientStop4 = new GaugeGradientStop(); gaugeGradientStop4.Value = 35; gaugeGradientStop4.Color = Color.DarkGreen; gradientColor2.Add(gaugeGradientStop4); range1.GradientStops = gradientColor1; range2.GradientStops = gradientColor2; scale1.CircularRanges.Add(range1); scale1.CircularRanges.Add(range2); scales.Add(scale1); circularGauge.CircularScales = scales; SetContentView(circularGauge); }
public override View GetSampleContent(Context con) { SfCircularGauge sfCircularGauge = new SfCircularGauge(con); ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); scale = new CircularScale(); scale.StartValue = 0; scale.EndValue = 240; scale.Interval = 20; scale.StartAngle = 135; scale.SweepAngle = 270; scale.RimColor = Color.ParseColor("#C62E0A"); scale.LabelColor = Color.ParseColor("#C62E0A"); scale.LabelOffset = 0.88; scale.ScaleStartOffset = 0.7; scale.ScaleEndOffset = 0.69; scale.MinorTicksPerInterval = 1; scale.MajorTickSettings.StartOffset = 0.7; scale.MajorTickSettings.EndOffset = 0.77; scale.MajorTickSettings.Width = 2; scale.MajorTickSettings.Color = Color.ParseColor("#C62E0A"); scale.MinorTickSettings.StartOffset = 0.7; scale.MinorTickSettings.EndOffset = 0.75; scale.MinorTickSettings.Width = 2; scale.MinorTickSettings.Color = Color.ParseColor("#C62E0A"); ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); MarkerPointer markerPointer = new MarkerPointer(); markerPointer.Value = 120; markerPointer.Color = Color.ParseColor("#C62E0A"); markerPointer.Offset = 0.69; markerPointer.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.InvertedTriangle; markerPointer.EnableAnimation = false; pointers.Add(markerPointer); scale.CircularPointers = pointers; circularScales.Add(scale); circularScale2 = new CircularScale(); circularScale2.StartAngle = 135; circularScale2.SweepAngle = 270; circularScale2.StartValue = 0; circularScale2.EndValue = 160; circularScale2.Interval = 40; circularScale2.MinorTicksPerInterval = 1; circularScale2.RimColor = Color.ParseColor("#333333"); circularScale2.LabelOffset = 0.45; circularScale2.LabelColor = Color.ParseColor("#333333"); circularScale2.ScaleStartOffset = 0.65; circularScale2.ScaleEndOffset = 0.64; circularScale2.MajorTickSettings.StartOffset = 0.64; circularScale2.MajorTickSettings.EndOffset = 0.57; circularScale2.MajorTickSettings.Width = 2; circularScale2.MajorTickSettings.Color = Color.ParseColor("#333333"); circularScale2.MinorTickSettings.StartOffset = 0.64; circularScale2.MinorTickSettings.EndOffset = 0.59; circularScale2.MinorTickSettings.Width = 2; circularScale2.MinorTickSettings.Color = Color.ParseColor("#333333"); ObservableCollection <CircularPointer> circularPointers = new ObservableCollection <CircularPointer>(); MarkerPointer markerPointer1 = new MarkerPointer(); markerPointer1.Value = 80; markerPointer1.Color = Color.ParseColor("#333333"); markerPointer1.Offset = 0.65; markerPointer1.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Triangle; markerPointer1.EnableAnimation = false; circularPointers.Add(markerPointer1); circularScale2.CircularPointers = circularPointers; circularScales.Add(circularScale2); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(sfCircularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return(linearLayout); }
public MainWindow() { InitializeComponent(); //Initializing circular gauge SfCircularGauge sfCircularGauge = new SfCircularGauge(); sfCircularGauge.Height = 250; sfCircularGauge.Width = 250; //Adding header sfCircularGauge.HeaderAlignment = HeaderAlignment.Custom; sfCircularGauge.GaugeHeaderPosition = new Point(0.63, 0.75); TextBlock textBlock = new TextBlock(); textBlock.Text = "Temperature (K)"; textBlock.Height = 40; textBlock.Width = 140; textBlock.FontSize = 13; textBlock.Foreground = new SolidColorBrush(Colors.Black); textBlock.FontWeight = FontWeights.SemiBold; sfCircularGauge.GaugeHeader = textBlock; //Initializing scales for circular gauge CircularScale mainscale = new CircularScale(); mainscale.RimStroke = new SolidColorBrush(Colors.LightGray); mainscale.RimStrokeThickness = 3; mainscale.LabelOffset = 0.1; MajorTickSetting majorTickSetting = new MajorTickSetting(); majorTickSetting.StrokeThickness = 1; majorTickSetting.Length = 10; mainscale.MajorTickSettings = majorTickSetting; MinorTickSetting minorTickSetting = new MinorTickSetting(); minorTickSetting.StrokeThickness = 1; minorTickSetting.Length = 5; mainscale.MinorTickSettings = minorTickSetting; //Adding range CircularRange circularRange = new CircularRange(); circularRange.StartValue = 0; circularRange.EndValue = 60; circularRange.Stroke = new SolidColorBrush(Colors.Gray); mainscale.Ranges.Add(circularRange); //Adding needle pointer CircularPointer circularPointer = new CircularPointer(); circularPointer.PointerType = PointerType.NeedlePointer; circularPointer.Value = 60; circularPointer.NeedleLengthFactor = 0.5; circularPointer.NeedlePointerType = NeedlePointerType.Triangle; circularPointer.PointerCapDiameter = 12; circularPointer.NeedlePointerStroke = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575"); circularPointer.KnobFill = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575"); circularPointer.KnobStroke = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575"); circularPointer.NeedlePointerStrokeThickness = 7; mainscale.Pointers.Add(circularPointer); //Adding range pointer CircularPointer circularPointer1 = new CircularPointer(); circularPointer1.PointerType = PointerType.RangePointer; circularPointer1.Value = 40; circularPointer1.RangePointerStrokeThickness = 5; circularPointer1.RangePointerStroke = (SolidColorBrush) new BrushConverter().ConvertFrom("#27beb6"); mainscale.Pointers.Add(circularPointer1); //Adding symbol pointer CircularPointer circularPointer2 = new CircularPointer(); circularPointer2.PointerType = PointerType.SymbolPointer; circularPointer2.Value = 70; circularPointer2.SymbolPointerHeight = 12; circularPointer2.SymbolPointerWidth = 12; circularPointer2.Symbol = Symbol.InvertedTriangle; circularPointer2.SymbolPointerStroke = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575"); mainscale.Pointers.Add(circularPointer2); sfCircularGauge.Scales.Add(mainscale); this.Content = sfCircularGauge; }
SfCircularGauge getCircularGauge() { if (this.ContentView == null) { circularGauge = new SfCircularGauge(); ObservableCollection<Scale> scales = new ObservableCollection<Scale>(); circularGauge.VerticalOptions = LayoutOptions.CenterAndExpand; //Scales scale = new Scale(); scale.StartValue = 0; scale.EndValue = 100; scale.Interval = 10; scale.StartAngle = 135; scale.SweepAngle = 270; scale.RimThickness = 20; scale.RimColor = Color.FromHex("#d14646"); scale.LabelColor = Color.Gray; scale.LabelOffset = 0.1; scale.MinorTicksPerInterval = 0; List<Pointer> pointers = new List<Pointer>(); needlePointer = new NeedlePointer(); needlePointer.Value = 60; needlePointer.Color = Color.Gray; needlePointer.KnobRadius = 20; needlePointer.KnobColor = Color.FromHex("#2bbfb8"); needlePointer.Thickness = 5; needlePointer.LengthFactor = 0.8; needlePointer.Type = PointerType.Bar; rangePointer = new RangePointer(); rangePointer.Value = 60; rangePointer.Color = Color.FromHex("#2bbfb8"); rangePointer.Thickness = 20; pointers.Add(needlePointer); pointers.Add(rangePointer); TickSettings minor = new TickSettings(); minor.Length = 4; minor.Color = Color.FromHex("#444444"); minor.Thickness = 3; scale.MinorTickSettings = minor; major = new TickSettings(); major.Length = 12; major.Color = Color.FromHex("#444444"); major.Thickness = 3; major.Offset = Device.OnPlatform(0.05, 0.1,0.3); scale.MajorTickSettings = major; scale.Pointers = pointers; scales.Add(scale); circularGauge.Scales = scales; Header header = new Header(); header.Text = "Speedmeter"; header.TextSize = 20; header.Position = Device.OnPlatform(iOS: new Point(.3, .7), Android: new Point(0.38, 0.7), WinPhone: new Point(0.38, 0.7)); header.ForegroundColor = Color.Gray; circularGauge.Headers.Add(header); } return circularGauge; }
public override View GetSampleContent (Context con) { circularGauge = new SfCircularGauge(con); ObservableCollection<CircularScale> _circularScales = new ObservableCollection<CircularScale>(); ObservableCollection<CircularPointer> _circularPointers = new ObservableCollection<CircularPointer>(); ObservableCollection<Header> _gaugeHeaders = new ObservableCollection<Header>(); // adding new CircularScale circularScale = new CircularScale(); circularScale.StartValue = 0; circularScale.EndValue = 100; circularScale.StartAngle = 130; circularScale.SweepAngle = 280; circularScale.RimWidth = 10; circularScale.RimColor = Color.ParseColor("#D14646"); circularScale.MinorTicksPerInterval = 0; circularScale.LabelOffset = labelsOffset; circularScale.LabelTextSize = 18; //adding major ticks majorTickstings = new TickSetting(); majorTickstings.Color = Color.ParseColor("#444444"); majorTickstings.Size = 15; majorTickstings.Offset = ticksOffset; circularScale.MajorTickSettings = majorTickstings; //adding minor ticks TickSetting minorTickstings = new TickSetting(); minorTickstings.Color = Color.Gray; circularScale.MinorTickSettings = minorTickstings; // adding needle Pointer needlePointer = new NeedlePointer(); needlePointer.Value = pointerValue; needlePointer.KnobColor = Color.ParseColor("#2BBFB8"); needlePointer.KnobRadius = 20; needlePointer.Type = NeedleType.Bar; needlePointer.LengthFactor = 0.8; needlePointer.Width = 3; needlePointer.Color = Color.Gray; _circularPointers.Add(needlePointer); // adding range Pointer rangePointer = new RangePointer(); rangePointer.Value = pointerValue; rangePointer.Color = Color.ParseColor("#2BBFB8"); rangePointer.Width = 10; _circularPointers.Add(rangePointer); circularScale.CircularPointers = _circularPointers; _circularScales.Add(circularScale); //adding header Header circularGaugeHeader = new Header(); circularGaugeHeader.Text = "Speedometer"; circularGaugeHeader.TextColor = Color.Gray; circularGaugeHeader.Position = new PointF((float)0.38, (float)0.7); circularGaugeHeader.TextSize = 20; _gaugeHeaders.Add(circularGaugeHeader); circularGauge.Headers = _gaugeHeaders; circularGauge.CircularScales = _circularScales; circularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(circularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return linearLayout; }
public override View GetSampleContent(Context con) { SfCircularGauge sfCircularGauge = new SfCircularGauge(con); ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); CircularScale scale = new CircularScale(); scale.StartAngle = 270; scale.StartValue = 0; scale.EndValue = 16; scale.Interval = 2; scale.LabelOffset = 0.75; scale.SweepAngle = 360; scale.MinorTicksPerInterval = 1; scale.ShowLastLabel = false; scale.ScaleStartOffset = 0.99; scale.ScaleEndOffset = 0.9; scale.LabelCreated += Scale_LabelCreated; scale.RimColor = Color.ParseColor("#E0E0E0"); scale.LabelColor = Color.ParseColor("#4B4B4B"); scale.MajorTickSettings.StartOffset = 0.9; scale.MajorTickSettings.EndOffset = 0.83; scale.MajorTickSettings.Width = 2; scale.MajorTickSettings.Color = Color.ParseColor("#9E9E9E"); scale.MinorTickSettings.StartOffset = 0.9; scale.MinorTickSettings.EndOffset = 0.85; scale.MinorTickSettings.Width = 2; scale.MinorTickSettings.Color = Color.ParseColor("#9E9E9E"); ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); pointer = new NeedlePointer(); pointer.Value = 14; pointer.Color = Color.ParseColor("#f03e3e"); pointer.Type = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle; pointer.LengthFactor = 0.65; pointer.Width = 20; pointer.KnobRadiusFactor = 0; pointer.KnobColor = Color.White; pointer.KnobStrokeWidth = 3; pointer.KnobStrokeColor = Color.White; pointer.EnableAnimation = false; pointers.Add(pointer); NeedlePointer needlePointer = new NeedlePointer(); needlePointer.Value = 6; needlePointer.Type = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle; needlePointer.LengthFactor = 0.65; needlePointer.Width = 20; needlePointer.Color = Color.ParseColor("#9E9E9E"); needlePointer.KnobRadiusFactor = 0.11; needlePointer.KnobColor = Color.White; needlePointer.KnobStrokeWidth = 3; needlePointer.KnobStrokeColor = Color.White; needlePointer.EnableAnimation = false; pointers.Add(needlePointer); scale.CircularPointers = pointers; circularScales.Add(scale); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(sfCircularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return(linearLayout); }
public override View GetSampleContent(Context con) { circularGauge = new SfCircularGauge(con); ObservableCollection <CircularScale> _circularScales = new ObservableCollection <CircularScale>(); ObservableCollection <CircularPointer> _circularPointers = new ObservableCollection <CircularPointer>(); ObservableCollection <Header> _gaugeHeaders = new ObservableCollection <Header>(); // adding new CircularScale circularScale = new CircularScale(); circularScale.StartValue = 0; circularScale.EndValue = 100; circularScale.StartAngle = 130; circularScale.SweepAngle = 280; circularScale.RimWidth = 10; circularScale.RimColor = Color.ParseColor("#D14646"); circularScale.MinorTicksPerInterval = 0; circularScale.LabelOffset = labelsOffset; circularScale.LabelTextSize = 18; //adding major ticks majorTickstings = new TickSetting(); majorTickstings.Color = Color.ParseColor("#444444"); majorTickstings.Size = 15; majorTickstings.Offset = ticksOffset; circularScale.MajorTickSettings = majorTickstings; //adding minor ticks TickSetting minorTickstings = new TickSetting(); minorTickstings.Color = Color.Gray; circularScale.MinorTickSettings = minorTickstings; // adding needle Pointer needlePointer = new NeedlePointer(); needlePointer.Value = pointerValue; needlePointer.KnobColor = Color.ParseColor("#2BBFB8"); needlePointer.KnobRadius = 20; needlePointer.Type = NeedleType.Bar; needlePointer.LengthFactor = 0.8; needlePointer.Width = 3; needlePointer.Color = Color.Gray; _circularPointers.Add(needlePointer); // adding range Pointer rangePointer = new RangePointer(); rangePointer.Value = pointerValue; rangePointer.Color = Color.ParseColor("#2BBFB8"); rangePointer.Width = 10; _circularPointers.Add(rangePointer); circularScale.CircularPointers = _circularPointers; _circularScales.Add(circularScale); //adding header Header circularGaugeHeader = new Header(); circularGaugeHeader.Text = "Speedometer"; circularGaugeHeader.TextColor = Color.Gray; circularGaugeHeader.Position = new PointF((float)0.38, (float)0.7); circularGaugeHeader.TextSize = 20; _gaugeHeaders.Add(circularGaugeHeader); circularGauge.Headers = _gaugeHeaders; circularGauge.CircularScales = _circularScales; circularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(circularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return(linearLayout); }
public override View GetSampleContent(Context context) { deviceDensity = context.Resources.DisplayMetrics.Density; SfCircularGauge sfCircularGauge = new SfCircularGauge(context); ObservableCollection <Header> headers = new ObservableCollection <Header>(); header = new Header(); header.Text = "08" + " h" + " 00" + " min"; header.TextSize = 25; header.TextColor = Color.ParseColor("#FF4500"); header.TextStyle = Typeface.DefaultBold; header.Position = new PointF((float)0.5, (float)0.5); headers.Add(header); sfCircularGauge.Headers = headers; ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); CircularScale scale = new CircularScale(); scale.StartValue = 0; scale.EndValue = 12; scale.Interval = 1; scale.StartAngle = 270; scale.SweepAngle = 360; scale.LabelOffset = 0.67; scale.ScaleStartOffset = 0.9; scale.ScaleEndOffset = 0.8; scale.ShowFirstLabel = false; scale.MinorTicksPerInterval = 4; scale.MajorTickSettings = new TickSetting() { StartOffset = 0.8, EndOffset = 0.72, Width = 2, Color = Color.DarkGray }; scale.MinorTickSettings = new TickSetting() { StartOffset = 0.8, EndOffset = 0.75 }; ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); markerPointer1 = new MarkerPointer(); markerPointer1.EnableDragging = true; markerPointer1.EnableAnimation = false; markerPointer1.Value = firstMarkerValue; markerPointer1.Color = Color.ParseColor("#F7CE72"); markerPointer1.Offset = 0.9; markerPointer1.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Circle; markerPointer1.ValueChanging += MarkerPointer1_ValueChanging; markerPointer1.PointerPositionChangedEvent += MarkerPointer1_PointerPositionChangedEvent; pointers.Add(markerPointer1); markerPointer2 = new MarkerPointer(); markerPointer2.EnableDragging = true; markerPointer2.EnableAnimation = false; markerPointer2.Value = secondMarkerValue; markerPointer2.Color = Color.ParseColor("#F7CE72"); markerPointer2.Offset = 0.9; markerPointer2.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Circle; markerPointer2.ValueChanging += MarkerPointer2_ValueChanging; markerPointer2.PointerPositionChangedEvent += MarkerPointer2_PointerPositionChangedEvent; pointers.Add(markerPointer2); markerPointer2.StepFrequency = markerPointer1.StepFrequency = 0.2; range = new CircularRange(); range.StartValue = markerPointer1.Value; range.EndValue = markerPointer2.Value; range.InnerStartOffset = 0.8; range.InnerEndOffset = 0.8; range.OuterStartOffset = 0.9; range.OuterEndOffset = 0.9; range.Color = Color.ParseColor("#E57982"); scale.CircularRanges.Add(range); scale.CircularPointers = pointers; circularScales.Add(scale); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(context); linearLayout.AddView(sfCircularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); linearLayout.LayoutChange += LinearLayout_LayoutChange; return(linearLayout); }
public override View GetSampleContent(Context con) { DisplayMetrics displayMetrics = con.Resources.DisplayMetrics; float screenHeight = displayMetrics.HeightPixels; SfCircularGauge sfCircularGauge = new SfCircularGauge(con); ObservableCollection <Header> headers = new ObservableCollection <Header>(); header = new Header(); header.Text = Math.Round((double)800, 2) + " GB"; header.TextSize = 24; header.TextColor = Color.Black; header.Position = new PointF((float)0.5, (float)0.1); headers.Add(header); sfCircularGauge.Headers = headers; ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); CircularScale scale = new CircularScale(); scale.StartAngle = 210; scale.SweepAngle = 120; scale.StartValue = 0; scale.EndValue = 1000; scale.Interval = 500; scale.ShowLabels = false; scale.ShowTicks = false; scale.ShowRim = false; scale.MinorTicksPerInterval = 0; ObservableCollection <CircularRange> ranges = new ObservableCollection <CircularRange>(); circularRange = new CircularRange(); circularRange.StartValue = 0; circularRange.EndValue = 1000; circularRange.Color = Color.ParseColor("#E0E0E0"); circularRange.Offset = 0.7; circularRange.Width = 30; ranges.Add(circularRange); scale.CircularRanges = ranges; ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); rangePointer = new RangePointer(); rangePointer.Value = 800; rangePointer.Color = Color.ParseColor("#FFDD00"); rangePointer.Width = 30; rangePointer.Offset = 0.7; rangePointer.EnableAnimation = false; pointers.Add(rangePointer); needlePointer = new NeedlePointer(); needlePointer.Value = 800; needlePointer.Color = Color.ParseColor("#424242"); needlePointer.Type = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle; needlePointer.LengthFactor = 0.7; needlePointer.Width = 10; needlePointer.KnobRadiusFactor = 0.1; needlePointer.KnobColor = Color.ParseColor("#424242"); pointers.Add(needlePointer); scale.CircularPointers = pointers; circularScales.Add(scale); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); SfCircularGauge circularGauge = new SfCircularGauge(con); ObservableCollection <Header> headers1 = new ObservableCollection <Header>(); header1 = new Header(); header1.Text = Math.Round((double)800, 2) + " GB"; header1.TextSize = 24; header1.TextColor = Color.Black; header1.Position = new PointF((float)0.5, (float)0.5); headers1.Add(header1); Header header2 = new Header(); header2.Text = "Used"; header2.TextSize = 18; header2.TextColor = Color.Gray; header2.Position = new PointF((float)0.5, (float)0.6); headers1.Add(header2); circularGauge.Headers = headers1; ObservableCollection <CircularScale> circularScales1 = new ObservableCollection <CircularScale>(); CircularScale scale1 = new CircularScale(); scale1.StartAngle = 90; scale1.SweepAngle = 360; scale1.StartValue = 0; scale1.EndValue = 1000; scale1.Interval = 500; scale1.ShowLabels = false; scale1.ShowTicks = false; scale1.ShowRim = false; scale1.MinorTicksPerInterval = 0; ObservableCollection <CircularRange> ranges1 = new ObservableCollection <CircularRange>(); circularRange1 = new CircularRange(); circularRange1.StartValue = 0; circularRange1.EndValue = 999.9; circularRange1.Color = Color.ParseColor("#E0E0E0"); circularRange1.Offset = 0.8; circularRange1.Width = 30; ranges1.Add(circularRange1); scale1.CircularRanges = ranges1; ObservableCollection <CircularPointer> pointers1 = new ObservableCollection <CircularPointer>(); rangePointer1 = new RangePointer(); rangePointer1.Value = 800; rangePointer1.Color = Color.ParseColor("#FFDD00"); rangePointer1.Width = 30; rangePointer1.Offset = 0.8; rangePointer1.EnableAnimation = false; pointers1.Add(rangePointer1); scale1.CircularPointers = pointers1; circularScales1.Add(scale1); circularGauge.CircularScales = circularScales1; circularGauge.SetBackgroundColor(Color.White); LinearLayout outerLinearLayout = (LinearLayout)sfCircularGauge.FindViewById(Resource.Id.linearLayout); LinearLayout linearLayout = new LinearLayout(con); linearLayout.Orientation = Orientation.Vertical; linearLayout.LayoutParameters = new LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent); linearLayout.AddView(sfCircularGauge, LayoutParams.WrapContent, (int)(screenHeight / 2.7)); linearLayout.AddView(circularGauge, LayoutParams.WrapContent, (int)(screenHeight / 2.7)); linearLayout.SetBackgroundColor(Color.White); linearLayout.SetPadding(30, 30, 30, 30); ScrollView mainView = new ScrollView(con); mainView.AddView(linearLayout); return(mainView); }
public override View GetSampleContent(Context con) { SfCircularGauge sfCircularGauge = new SfCircularGauge(con); ObservableCollection <Header> headers = new ObservableCollection <Header>(); Header header = new Header(); header.Text = "0"; header.TextSize = 20; header.TextColor = Color.ParseColor("#F03E3E"); header.Position = new PointF((float)0.28, (float)0.86); headers.Add(header); Header header1 = new Header(); header1.Text = "100"; header1.TextSize = 20; header1.TextColor = Color.ParseColor("#30B32D"); header1.Position = new PointF((float)0.75, (float)0.86); headers.Add(header1); Header header2 = new Header(); header2.Text = "55%"; header2.TextSize = 20; header2.TextColor = Color.ParseColor("#F03E3E"); header2.Position = new PointF((float)0.5, (float)0.5); headers.Add(header2); sfCircularGauge.Headers = headers; ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); CircularScale scale = new CircularScale(); scale.StartValue = 0; scale.EndValue = 100; scale.Interval = 10; scale.ShowRim = false; scale.ShowTicks = false; scale.ShowLabels = false; ObservableCollection <CircularRange> ranges = new ObservableCollection <CircularRange>(); CircularRange circularRange = new CircularRange(); circularRange.Offset = 0.8; circularRange.StartValue = 0; circularRange.EndValue = 100; circularRange.Width = 25; ObservableCollection <GaugeGradientStop> gradients = new ObservableCollection <GaugeGradientStop>(); GaugeGradientStop gaugeGradientStop = new GaugeGradientStop(); gaugeGradientStop.Value = 0; gaugeGradientStop.Color = Color.ParseColor("#F03E3E"); gradients.Add(gaugeGradientStop); GaugeGradientStop gaugeGradientStop1 = new GaugeGradientStop(); gaugeGradientStop1.Value = 35; gaugeGradientStop1.Color = Color.ParseColor("#FFDD00"); gradients.Add(gaugeGradientStop1); GaugeGradientStop gaugeGradientStop2 = new GaugeGradientStop(); gaugeGradientStop2.Value = 75; gaugeGradientStop2.Color = Color.ParseColor("#FFDD00"); gradients.Add(gaugeGradientStop2); GaugeGradientStop gaugeGradientStop3 = new GaugeGradientStop(); gaugeGradientStop3.Value = 100; gaugeGradientStop3.Color = Color.ParseColor("#30B32D"); gradients.Add(gaugeGradientStop3); circularRange.GradientStops = gradients; ranges.Add(circularRange); scale.CircularRanges = ranges; ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); MarkerPointer markerPointer = new MarkerPointer(); markerPointer.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.InvertedTriangle; markerPointer.Offset = 0.8; markerPointer.MarkerHeight = 15; markerPointer.MarkerWidth = 15; markerPointer.Value = 55; markerPointer.Color = Color.Red; pointers.Add(markerPointer); scale.CircularPointers = pointers; circularScales.Add(scale); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.AddView(sfCircularGauge); linearLayout.SetPadding(30, 30, 30, 30); linearLayout.SetBackgroundColor(Color.White); return(linearLayout); }
public override View GetSampleContent(Context con) { SfCircularGauge sfCircularGauge = new SfCircularGauge(con); ObservableCollection <Header> headers = new ObservableCollection <Header>(); Header header = new Header(); header.Text = "Inverted Traingle"; header.TextSize = 18; header.TextColor = Color.Black; header.Position = new PointF((float)0.5, (float)0.6); headers.Add(header); sfCircularGauge.Headers = headers; ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>(); CircularScale scale = new CircularScale(); scale.StartAngle = 180; scale.SweepAngle = 180; scale.ScaleStartOffset = 0.7; scale.ScaleEndOffset = 0.68; scale.StartValue = 0; scale.EndValue = 100; scale.RimColor = Color.Gray; scale.Interval = 50; scale.ShowLabels = false; scale.ShowTicks = false; scale.MinorTicksPerInterval = 0; ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>(); MarkerPointer markerPointer = new MarkerPointer(); markerPointer.Value = 80; markerPointer.Color = Color.ParseColor("#00bdae"); markerPointer.Offset = 0.7; markerPointer.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.InvertedTriangle; pointers.Add(markerPointer); scale.CircularPointers = pointers; circularScales.Add(scale); sfCircularGauge.CircularScales = circularScales; sfCircularGauge.SetBackgroundColor(Color.White); //triangle SfCircularGauge sfCircularGauge1 = new SfCircularGauge(con); ObservableCollection <Header> headers1 = new ObservableCollection <Header>(); Header header1 = new Header(); header1.Text = "Traingle"; header1.TextSize = 18; header1.TextColor = Color.Black; header1.Position = new PointF((float)0.5, (float)0.6); headers1.Add(header1); sfCircularGauge1.Headers = headers1; ObservableCollection <CircularScale> circularScales1 = new ObservableCollection <CircularScale>(); CircularScale scale1 = new CircularScale(); scale1.StartAngle = 180; scale1.SweepAngle = 180; scale1.ScaleStartOffset = 0.7; scale1.ScaleEndOffset = 0.68; scale1.StartValue = 0; scale1.EndValue = 100; scale1.RimColor = Color.Gray; scale1.Interval = 50; scale1.ShowLabels = false; scale1.ShowTicks = false; scale1.MinorTicksPerInterval = 0; ObservableCollection <CircularPointer> pointers1 = new ObservableCollection <CircularPointer>(); MarkerPointer markerPointer1 = new MarkerPointer(); markerPointer1.Value = 80; markerPointer1.Color = Color.Green; markerPointer1.Offset = 0.68; markerPointer1.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Triangle; pointers1.Add(markerPointer1); scale1.CircularPointers = pointers1; circularScales1.Add(scale1); sfCircularGauge1.CircularScales = circularScales1; sfCircularGauge1.SetBackgroundColor(Color.White); //range pointer SfCircularGauge sfCircularGauge2 = new SfCircularGauge(con); ObservableCollection <Header> headers2 = new ObservableCollection <Header>(); Header header2 = new Header(); header2.Text = "Range Pointer"; header2.TextSize = 18; header2.TextColor = Color.Black; header2.Position = new PointF((float)0.5, (float)0.6); headers2.Add(header2); sfCircularGauge2.Headers = headers2; ObservableCollection <CircularScale> circularScales2 = new ObservableCollection <CircularScale>(); CircularScale scale2 = new CircularScale(); scale2.StartAngle = 180; scale2.SweepAngle = 180; scale2.StartValue = 0; scale2.EndValue = 100; scale2.RadiusFactor = 0.7; scale2.RimColor = Color.Gray; scale2.Interval = 50; scale2.ShowLabels = false; scale2.ShowTicks = false; scale2.RimWidth = 3; scale2.MinorTicksPerInterval = 0; ObservableCollection <CircularPointer> pointers2 = new ObservableCollection <CircularPointer>(); RangePointer rangePointer = new RangePointer(); rangePointer.Value = 60; rangePointer.Color = Color.ParseColor("#FF2680"); rangePointer.Offset = 0.6; rangePointer.Width = 20; rangePointer.EnableAnimation = false; pointers2.Add(rangePointer); scale2.CircularPointers = pointers2; circularScales2.Add(scale2); sfCircularGauge2.CircularScales = circularScales2; sfCircularGauge2.SetBackgroundColor(Color.White); //needlepointer SfCircularGauge sfCircularGauge3 = new SfCircularGauge(con); ObservableCollection <Header> headers3 = new ObservableCollection <Header>(); Header header3 = new Header(); header3.Text = "Needle Pointer"; header3.TextSize = 18; header3.TextColor = Color.Black; header3.Position = new PointF((float)0.5, (float)0.6); headers3.Add(header3); sfCircularGauge3.Headers = headers3; ObservableCollection <CircularScale> circularScales3 = new ObservableCollection <CircularScale>(); CircularScale scale3 = new CircularScale(); scale3.StartAngle = 180; scale3.SweepAngle = 180; scale3.StartValue = 0; scale3.EndValue = 100; scale3.RadiusFactor = 0.7; scale3.RimColor = Color.Gray; scale3.Interval = 50; scale3.ShowLabels = false; scale3.ShowTicks = false; scale3.RimWidth = 3; scale3.MinorTicksPerInterval = 0; ObservableCollection <CircularPointer> pointers3 = new ObservableCollection <CircularPointer>(); NeedlePointer needlePointer = new NeedlePointer(); needlePointer.Value = 80; needlePointer.Color = Color.Purple; needlePointer.LengthFactor = 0.7; needlePointer.KnobRadius = 0; needlePointer.Width = 10; needlePointer.Type = NeedleType.Triangle; pointers3.Add(needlePointer); scale3.CircularPointers = pointers3; circularScales3.Add(scale3); sfCircularGauge3.CircularScales = circularScales3; sfCircularGauge3.SetBackgroundColor(Color.White); SfCircularGauge sfCircularGauge4 = new SfCircularGauge(con); ObservableCollection <Header> headers4 = new ObservableCollection <Header>(); Header header4 = new Header(); header4.Text = "Multiple Needle"; header4.TextSize = 18; header4.TextColor = Color.Black; header4.Position = new PointF((float)0.5, (float)0.7); headers4.Add(header4); sfCircularGauge4.Headers = headers4; ObservableCollection <CircularScale> circularScales4 = new ObservableCollection <CircularScale>(); CircularScale scale4 = new CircularScale(); scale4.StartAngle = 180; scale4.SweepAngle = 180; scale4.StartValue = 0; scale4.EndValue = 100; scale4.RadiusFactor = 0.7; scale4.RimColor = Color.Gray; scale4.Interval = 50; scale4.ShowLabels = false; scale4.ShowTicks = false; scale4.RimWidth = 3; scale4.MinorTicksPerInterval = 0; ObservableCollection <CircularPointer> pointers4 = new ObservableCollection <CircularPointer>(); NeedlePointer needlePointer1 = new NeedlePointer(); needlePointer1.Value = 40; needlePointer1.Color = Color.ParseColor("#ed7d31"); needlePointer1.LengthFactor = 0.5; needlePointer1.KnobRadiusFactor = 0.05; needlePointer1.KnobColor = Color.White; needlePointer1.Width = 10; needlePointer1.Type = NeedleType.Triangle; needlePointer1.TailStrokeColor = Color.ParseColor("#ed7d31"); needlePointer1.KnobStrokeWidth = 2; needlePointer1.KnobStrokeColor = Color.ParseColor("#ed7d31"); pointers4.Add(needlePointer1); NeedlePointer needlePointer2 = new NeedlePointer(); needlePointer2.Value = 70; needlePointer2.Color = Color.ParseColor("#ed7d31"); needlePointer2.LengthFactor = 0.6; needlePointer2.KnobRadiusFactor = 0.05; needlePointer2.KnobColor = Color.White; needlePointer2.Width = 10; needlePointer2.Type = NeedleType.Triangle; needlePointer2.TailStrokeColor = Color.ParseColor("#ed7d31"); needlePointer2.KnobStrokeWidth = 2; needlePointer2.KnobStrokeColor = Color.ParseColor("#ed7d31"); pointers4.Add(needlePointer2); scale4.CircularPointers = pointers4; circularScales4.Add(scale4); sfCircularGauge4.CircularScales = circularScales4; sfCircularGauge4.SetBackgroundColor(Color.White); LinearLayout linearLayout = new LinearLayout(con); linearLayout.Orientation = Orientation.Vertical; linearLayout.LayoutParameters = new LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent); linearLayout.AddView(sfCircularGauge, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density)); linearLayout.AddView(sfCircularGauge1, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density)); linearLayout.AddView(sfCircularGauge2, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density)); linearLayout.AddView(sfCircularGauge3, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density)); linearLayout.AddView(sfCircularGauge4, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density)); linearLayout.SetPadding(30, 30, 30, 30); ScrollView mainView = new ScrollView(con); mainView.AddView(linearLayout); return(mainView); }
SfCircularGauge getCircularGauge() { if (this.ContentView == null) { circularGauge = new SfCircularGauge(); ObservableCollection <Scale> scales = new ObservableCollection <Scale>(); circularGauge.VerticalOptions = LayoutOptions.CenterAndExpand; //Scales scale = new Scale(); scale.StartValue = 0; scale.EndValue = 100; scale.Interval = 10; scale.StartAngle = 135; scale.SweepAngle = 270; scale.RimThickness = 20; scale.RimColor = Color.FromHex("#d14646"); scale.LabelColor = Color.Gray; scale.LabelOffset = 0.1; scale.MinorTicksPerInterval = 0; List <Pointer> pointers = new List <Pointer>(); needlePointer = new NeedlePointer(); needlePointer.Value = 60; needlePointer.Color = Color.Gray; needlePointer.KnobRadius = 20; needlePointer.KnobColor = Color.FromHex("#2bbfb8"); needlePointer.Thickness = 5; needlePointer.LengthFactor = 0.8; needlePointer.Type = PointerType.Bar; rangePointer = new RangePointer(); rangePointer.Value = 60; rangePointer.Color = Color.FromHex("#2bbfb8"); rangePointer.Thickness = 20; pointers.Add(needlePointer); pointers.Add(rangePointer); TickSettings minor = new TickSettings(); minor.Length = 4; minor.Color = Color.FromHex("#444444"); minor.Thickness = 3; scale.MinorTickSettings = minor; major = new TickSettings(); major.Length = 12; major.Color = Color.FromHex("#444444"); major.Thickness = 3; major.Offset = Device.OnPlatform(0.05, 0.1, 0.3); scale.MajorTickSettings = major; scale.Pointers = pointers; scales.Add(scale); circularGauge.Scales = scales; Header header = new Header(); header.Text = "Speedmeter"; header.TextSize = 20; header.Position = Device.OnPlatform(iOS: new Point(.3, .7), Android: new Point(0.38, 0.7), WinPhone: new Point(0.38, 0.7)); header.ForegroundColor = Color.Gray; circularGauge.Headers.Add(header); } return(circularGauge); }