コード例 #1
0
		public Trackball ()
		{
			chart 					        = new SFChart ();
			SFNumericalAxis primaryAxis     = new SFNumericalAxis ();
			chart.PrimaryAxis 				= primaryAxis;
			SFNumericalAxis secondaryAxis 	= new SFNumericalAxis ();
			chart.SecondaryAxis 			= secondaryAxis;
			ChartTrackballDataSource dataModel 	= new ChartTrackballDataSource ();
			chart.DataSource 				= dataModel as SFChartDataSource;

			label 					= new UILabel ();
			label.Text 				= "Press and hold to enable trackball";
			label.Font				= UIFont.FromName("Helvetica", 12f);
			label.TextAlignment 	= UITextAlignment.Center;
			label.LineBreakMode 	= UILineBreakMode.WordWrap;
			label.Lines 			= 2; 
			label.BackgroundColor   = UIColor.Black.ColorWithAlpha (0.7f);
			label.TextColor 		= UIColor.White;


			chart.AddChartBehavior (new SFChartTrackballBehavior());
			this.AddSubview (chart);
			this.AddSubview (label);
			this.control = this;
		}
コード例 #2
0
        public LiveUpdate()
        {
            chart = new SFChart();
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.ShowMajorGridLines = false;
            secondaryAxis.Minimum            = NSObject.FromObject(-1.5);
            secondaryAxis.Maximum            = NSObject.FromObject(1.5);
            secondaryAxis.Interval           = NSObject.FromObject(0.5);
            chart.SecondaryAxis = secondaryAxis;
            dataModel           = new ChartViewModel();

            series              = new SFFastLineSeries();
            series.ItemsSource  = dataModel.liveData1;
            series.XBindingPath = "XValue";
            series.YBindingPath = "YValue";
            chart.Series.Add(series);

            series1              = new SFFastLineSeries();
            series1.ItemsSource  = dataModel.liveData2;
            series1.XBindingPath = "XValue";
            series1.YBindingPath = "YValue";
            chart.Series.Add(series1);
            chart.ColorModel.Palette = SFChartColorPalette.Natural;

            this.AddSubview(chart);
            UpdateData();
        }
コード例 #3
0
        public Area()
        {
            SFChart chart = new SFChart();

            chart.ColorModel.Palette  = SFChartColorPalette.Natural;
            chart.Title.Text          = new NSString("Average Sales Comparison");
            chart.Title.TextAlignment = UITextAlignment.Center;

            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Shift;
            primaryAxis.Minimum            = new NSNumber(2000);
            primaryAxis.Maximum            = new NSNumber(2005);
            primaryAxis.Interval           = new NSNumber(1);
            primaryAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis = primaryAxis;

            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            chart.SecondaryAxis      = secondaryAxis;
            secondaryAxis.Minimum    = new NSNumber(2);
            secondaryAxis.Maximum    = new NSNumber(5);
            secondaryAxis.Interval   = new NSNumber(1);
            secondaryAxis.Title.Text = new NSString("Revenue in Millions");
            secondaryAxis.AxisLineStyle.LineWidth = 0;
            secondaryAxis.MajorTickStyle.LineSize = 0;
            chart.Delegate = new AxisLabelFormatter();
            ChartViewModel dataModel = new ChartViewModel();

            SFAreaSeries series1 = new SFAreaSeries();

            series1.ItemsSource     = dataModel.AreaData1;
            series1.XBindingPath    = "XValue";
            series1.YBindingPath    = "YValue";
            series1.EnableTooltip   = true;
            series1.Alpha           = 0.5f;
            series1.Label           = "Product A";
            series1.EnableAnimation = true;
            series1.LegendIcon      = SFChartLegendIcon.SeriesType;
            chart.Series.Add(series1);

            SFAreaSeries series2 = new SFAreaSeries();

            series2.ItemsSource     = dataModel.AreaData2;
            series2.XBindingPath    = "XValue";
            series2.YBindingPath    = "YValue";
            series2.EnableTooltip   = true;
            series2.Alpha           = 0.5f;
            series2.Label           = "Product B";
            series2.EnableAnimation = true;
            series2.LegendIcon      = SFChartLegendIcon.SeriesType;
            chart.Series.Add(series2);

            chart.Legend.Visible = true;
            chart.Legend.ToggleSeriesVisibility = true;
            chart.Legend.IconWidth    = 14;
            chart.Legend.IconHeight   = 14;
            chart.Legend.DockPosition = SFChartLegendPosition.Bottom;
            this.AddSubview(chart);
        }
コード例 #4
0
		public AutoScrolling ()
		{

			chart 							= new SFChart ();
			SFNumericalAxis primaryAxis 	= new SFNumericalAxis ();
			primaryAxis.AutoScrollingDelta 	= 10;
			chart.PrimaryAxis				= primaryAxis;
			SFNumericalAxis secondaryAxis 	= new SFNumericalAxis ();
			secondaryAxis.Minimum 			= NSObject.FromObject(0);
			secondaryAxis.Maximum 			= NSObject.FromObject(9);
			chart.SecondaryAxis				= secondaryAxis;
			dataModel 						= new AutoScrollingDataSource ();
			chart.DataSource 				= dataModel as SFChartDataSource;

			label 							= new UILabel ();
			label.Text 						= "In this demo, a data point is being added for every 500 milliseconds. The Chart is then automatically scrolled to display the fixed range of data points at the end. You can also pan to view previous data points. In this sample the delta value is 10";
			label.Font						= UIFont.FromName("Helvetica", 12f);
			label.TextAlignment 			= UITextAlignment.Center;
			label.LineBreakMode 			= UILineBreakMode.WordWrap;
			label.Lines 					= 6; 
			label.BackgroundColor   		= UIColor.Black.ColorWithAlpha (0.7f);
			label.TextColor 				= UIColor.White;

			chart.AddChartBehavior (new SFChartZoomPanBehavior());

			this.AddSubview (chart);
			this.AddSubview (label);
			this.control = this;
			random = new Random ();
			UpdateData ();
		}
コード例 #5
0
        public VerticalChart()
        {
            chart = new SFChart();

            SFDateTimeAxis  xAxis     = new SFDateTimeAxis();
            NSDateFormatter formatter = new NSDateFormatter();

            formatter.DateFormat            = new NSString("mm:ss");
            xAxis.LabelStyle.LabelFormatter = formatter;
            xAxis.Title.Text         = new NSString("Time(sec)");
            xAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis        = xAxis;

            SFNumericalAxis yAxis = new SFNumericalAxis();

            yAxis.Minimum            = new NSNumber(-10);
            yAxis.Maximum            = new NSNumber(10);
            yAxis.Interval           = new NSNumber(10);
            yAxis.Title.Text         = new NSString("Velocity(m/s)");
            yAxis.ShowMajorGridLines = false;
            chart.SecondaryAxis      = yAxis;

            chart.Title.Text = new NSString("Seismograph of Japan Earthquake 2011");
            chart.Title.Font = UIFont.FromName("Helvetica neue", 15);

            dataModel        = new ChartVerticalDataModel();
            chart.DataSource = dataModel as ChartVerticalDataModel;

            this.AddSubview(chart);
            UpdateData();
        }
コード例 #6
0
        public Trackball()
        {
            chart = new SFChart();
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            chart.SecondaryAxis = secondaryAxis;
            ChartTrackballDataSource dataModel = new ChartTrackballDataSource();

            chart.DataSource = dataModel as SFChartDataSource;

            label                 = new UILabel();
            label.Text            = "Press and hold to enable trackball";
            label.Font            = UIFont.FromName("Helvetica", 12f);
            label.TextAlignment   = UITextAlignment.Center;
            label.LineBreakMode   = UILineBreakMode.WordWrap;
            label.Lines           = 2;
            label.BackgroundColor = UIColor.Black.ColorWithAlpha(0.7f);
            label.TextColor       = UIColor.White;


            chart.AddChartBehavior(new SFChartTrackballBehavior());
            this.AddSubview(chart);
            this.AddSubview(label);
            this.control = this;
        }
コード例 #7
0
ファイル: StepArea.cs プロジェクト: ahhassan3/xamarin-demos
        public StepArea()
        {
            SFChart chart = new SFChart();

            chart.ColorModel.Palette = SFChartColorPalette.Natural;

            chart.Title.Text = new NSString("Electricity Production");
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.Title.Text              = new NSString("Year");
            primaryAxis.Interval                = new NSNumber(2);
            primaryAxis.EdgeLabelsDrawingMode   = SFChartAxisEdgeLabelsDrawingMode.Shift;
            primaryAxis.ShowMajorGridLines      = false;
            primaryAxis.MajorTickStyle.LineSize = 8;

            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Title.Text = new NSString("Production (Billion as kWh)");
            secondaryAxis.Minimum    = new NSNumber(0);
            secondaryAxis.Maximum    = new NSNumber(600);
            secondaryAxis.Interval   = new NSNumber(100);
            secondaryAxis.AxisLineStyle.LineWidth  = 0;
            secondaryAxis.MajorTickStyle.LineWidth = 0;
            NSNumberFormatter formatter = new NSNumberFormatter();

            formatter.PositiveSuffix = "B";
            secondaryAxis.LabelStyle.LabelFormatter = formatter;
            chart.SecondaryAxis = secondaryAxis;
            ChartViewModel dataModel = new ChartViewModel();

            SFStepAreaSeries series1 = new SFStepAreaSeries();

            series1.ItemsSource     = dataModel.StepAreaData1;
            series1.XBindingPath    = "XValue";
            series1.YBindingPath    = "YValue";
            series1.EnableTooltip   = true;
            series1.Label           = "Renewable";
            series1.EnableAnimation = true;
            series1.LegendIcon      = SFChartLegendIcon.Rectangle;
            chart.Series.Add(series1);

            SFStepAreaSeries series2 = new SFStepAreaSeries();

            series2.ItemsSource     = dataModel.StepAreaData2;
            series2.XBindingPath    = "XValue";
            series2.YBindingPath    = "YValue";
            series2.EnableTooltip   = true;
            series2.Label           = "Non-Renewable";
            series2.EnableAnimation = true;
            series2.LegendIcon      = SFChartLegendIcon.Rectangle;
            chart.Series.Add(series2);

            chart.Legend.Visible = true;
            chart.Legend.ToggleSeriesVisibility = true;
            chart.Legend.IconWidth    = 14;
            chart.Legend.IconHeight   = 14;
            chart.Legend.DockPosition = SFChartLegendPosition.Bottom;
            this.AddSubview(chart);
        }
コード例 #8
0
        public Polar()
        {
            SFChart chart = new SFChart();

            chart.Title.Text         = new NSString("Plants in Wonderland");
            chart.ColorModel.Palette = SFChartColorPalette.Natural;

            chart.Title.TextAlignment = UITextAlignment.Center;
            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            chart.SecondaryAxis = secondaryAxis;
            ChartViewModel dataModel = new ChartViewModel();

            SFPolarSeries series1 = new SFPolarSeries();

            series1.ItemsSource     = dataModel.PolarData1;
            series1.XBindingPath    = "XValue";
            series1.YBindingPath    = "YValue";
            series1.EnableTooltip   = true;
            series1.Alpha           = 0.5f;
            series1.Label           = "Weed";
            series1.EnableAnimation = true;
            chart.Series.Add(series1);

            SFPolarSeries series2 = new SFPolarSeries();

            series2.ItemsSource     = dataModel.PolarData2;
            series2.XBindingPath    = "XValue";
            series2.YBindingPath    = "YValue";
            series2.EnableTooltip   = true;
            series2.Alpha           = 0.5f;
            series2.Label           = "Flower";
            series2.EnableAnimation = true;
            chart.Series.Add(series2);

            SFPolarSeries series3 = new SFPolarSeries();

            series3.ItemsSource     = dataModel.PolarData3;
            series3.XBindingPath    = "XValue";
            series3.YBindingPath    = "YValue";
            series3.EnableTooltip   = true;
            series3.Alpha           = 0.5f;
            series3.Label           = "Tree";
            series3.EnableAnimation = true;
            chart.Series.Add(series3);

            chart.Legend.Visible                = true;
            chart.Legend.IconWidth              = 14;
            chart.Legend.IconHeight             = 14;
            chart.Legend.ToggleSeriesVisibility = true;
            chart.Legend.DockPosition           = SFChartLegendPosition.Bottom;

            this.AddSubview(chart);
        }
コード例 #9
0
        public Tooltip()
        {
            SFChart chart = new SFChart();

            chart.Title.Text = new NSString("Efficiency of oil power Production");

            //Primary Axis

            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.PlotOffset              = 10;
            primaryAxis.ShowMajorGridLines      = false;
            primaryAxis.AxisLineStyle.LineWidth = new NSNumber(0.5);
            primaryAxis.Interval = new NSNumber(2);
            chart.PrimaryAxis    = primaryAxis;

            // Secondary Axis

            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Shift;
            secondaryAxis.Maximum  = new NSNumber(2.701);
            secondaryAxis.Minimum  = new NSNumber(1.5);
            secondaryAxis.Interval = new NSNumber(0.2);
            secondaryAxis.AxisLineStyle.LineWidth = new NSNumber(0);
            secondaryAxis.LabelStyle.Font         = UIFont.FromName("Helvetica", 12f);
            secondaryAxis.Title.Font = UIFont.FromName("Helvetica", 15f);
            secondaryAxis.MajorTickStyle.LineSize      = 0;
            secondaryAxis.MajorGridLineStyle.LineWidth = new NSNumber(0.25);
            chart.SecondaryAxis = secondaryAxis;

            ChartViewModel dataModel = new ChartViewModel();

            SFSplineSeries series = new SFSplineSeries();

            series.ItemsSource   = dataModel.TooltipData;
            series.XBindingPath  = "XValue";
            series.YBindingPath  = "YValue";
            series.EnableTooltip = true;
            //series.Color = UIColor.Orange;
            series.LineWidth                    = 2.5f;
            series.DataMarker.ShowMarker        = true;
            series.DataMarker.MarkerType        = SFChartDataMarkerType.Ellipse;
            series.DataMarker.MarkerHeight      = 5;
            series.DataMarker.MarkerWidth       = 5;
            series.DataMarker.MarkerBorderColor = UIColor.Black;
            series.DataMarker.MarkerColor       = UIColor.FromRGBA(193.0f / 255.0f, 39.0f / 255.0f, 45.0f / 255.0f, 1.0f);
            series.EnableAnimation              = true;
            chart.Series.Add(series);
            chart.Delegate = new ChartTooltipDelegate();
            SFChartTooltipBehavior behavior = new SFChartTooltipBehavior();

            behavior.BackgroundColor = UIColor.FromRGBA(193.0f / 255.0f, 39.0f / 255.0f, 45.0f / 255.0f, 1.0f);
            chart.AddChartBehavior(behavior);

            this.AddSubview(chart);
        }
コード例 #10
0
ファイル: Trendlines.cs プロジェクト: ahhassan3/xamarin-demos
        private SFChart GetCurrencyDevationChart()
        {
            var sfchart = new SFChart();

            sfchart.Title.Text = "1 USD to INR from 1977 to 2019";

            sfchart.Legend.Visible      = true;
            sfchart.Legend.DockPosition = SFChartLegendPosition.Top;
            sfchart.Legend.IconHeight   = 14;
            sfchart.Legend.IconWidth    = 14;
            sfchart.ColorModel.Palette  = SFChartColorPalette.Natural;
            sfchart.Delegate            = new AxisLabelFormatter();
            SFNumericalAxis numericalaxis = new SFNumericalAxis();

            numericalaxis.AxisLineStyle.LineWidth  = 0;
            numericalaxis.MajorTickStyle.LineWidth = 0;
            numericalaxis.Title.Text = new Foundation.NSString("Rupees against Dollars");
            sfchart.SecondaryAxis    = numericalaxis;

            SFDateTimeAxis primaryAxis = new SFDateTimeAxis();

            primaryAxis.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Shift;
            primaryAxis.ShowMajorGridLines    = false;
            primaryAxis.IntervalType          = SFChartDateTimeIntervalType.Years;
            primaryAxis.Interval           = new NSNumber(8);
            primaryAxis.Title.Text         = new Foundation.NSString("Years");
            primaryAxis.ShowMinorGridLines = false;
            sfchart.PrimaryAxis            = primaryAxis;

            splineSeries1 = new SFSplineSeries();
            splineSeries1.XBindingPath = "XValue";
            splineSeries1.YBindingPath = "YValue";
            splineSeries1.ItemsSource  = ChartViewModel.GetTrendlineDataSource1();
            splineSeries1.Label        = "Rupees";
            splineSeries1.LegendIcon   = SFChartLegendIcon.SeriesType;

            splineSeries1.DataMarker.ShowMarker        = true;
            splineSeries1.DataMarker.ShowLabel         = false;
            splineSeries1.DataMarker.MarkerHeight      = 5;
            splineSeries1.DataMarker.MarkerWidth       = 5;
            splineSeries1.DataMarker.MarkerWidth       = 2;
            splineSeries1.DataMarker.MarkerBorderColor = UIColor.FromName("#00bdae");
            splineSeries1.Trendlines = new ChartTrendlineCollection();
            linearTrendline          = new SFChartTrendline()
            {
                Type            = SFTrendlineType.Linear,
                LineColor       = UIColor.FromRGB(201, 23, 97),
                LegendIcon      = SFChartLegendIcon.SeriesType,
                Label           = "Linear",
                PolynomialOrder = 3,
            };

            splineSeries1.Trendlines.Add(linearTrendline);
            sfchart.Series.Add(splineSeries1);

            return(sfchart);
        }
コード例 #11
0
 SFRangeAxisBase getYAxis()
 {
     if (_axis == null)
     {
         _axis = new SFNumericalAxis();
         _axis.OpposedPosition    = true;
         _axis.ShowMajorGridLines = false;
     }
     return(_axis);
 }
コード例 #12
0
        public StepArea()
        {
            SFChart chart = new SFChart();

            chart.ColorModel.Palette = SFChartColorPalette.Natural;

            chart.Title.Text = new NSString("Electricity Production");
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.Title.Text              = new NSString("Year");
            primaryAxis.Interval                = new NSNumber(1);
            primaryAxis.EdgeLabelsDrawingMode   = SFChartAxisEdgeLabelsDrawingMode.Shift;
            primaryAxis.MajorTickStyle.LineSize = 8;

            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Title.Text = new NSString("Production(kWh)");
            secondaryAxis.Minimum    = new NSNumber(0);
            secondaryAxis.Maximum    = new NSNumber(100);
            secondaryAxis.Interval   = new NSNumber(10);
            secondaryAxis.AxisLineStyle.LineWidth  = 0;
            secondaryAxis.MajorTickStyle.LineWidth = 0;

            chart.SecondaryAxis = secondaryAxis;
            ChartViewModel dataModel = new ChartViewModel();

            SFStepAreaSeries series1 = new SFStepAreaSeries();

            series1.ItemsSource     = dataModel.StepAreaData1;
            series1.XBindingPath    = "XValue";
            series1.YBindingPath    = "YValue";
            series1.EnableTooltip   = true;
            series1.Label           = "Company A";
            series1.EnableAnimation = true;
            chart.Series.Add(series1);

            SFStepAreaSeries series2 = new SFStepAreaSeries();

            series2.ItemsSource     = dataModel.StepAreaData2;
            series2.XBindingPath    = "XValue";
            series2.YBindingPath    = "YValue";
            series2.EnableTooltip   = true;
            series2.Label           = "Company B";
            series2.EnableAnimation = true;
            chart.Series.Add(series2);

            chart.Legend.Visible = true;
            chart.Legend.ToggleSeriesVisibility = true;
            chart.Legend.IconWidth    = 14;
            chart.Legend.IconHeight   = 14;
            chart.Legend.DockPosition = SFChartLegendPosition.Bottom;
            chart.AddChartBehavior(new SFChartZoomPanBehavior());
            this.AddSubview(chart);
        }
コード例 #13
0
        public AxisCrossing()
        {
            SFChart chart = new SFChart();

            chart.Title.Text = new NSString("Profit/loss percentage comparison");

            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.Interval              = new NSNumber(2);
            primaryAxis.CrossesAt             = 0;
            primaryAxis.PlotOffset            = 7;
            primaryAxis.ShowMajorGridLines    = false;
            primaryAxis.AxisLineOffset        = 7;
            primaryAxis.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Fit;
            primaryAxis.Name               = new NSString("XAxis");
            primaryAxis.CrossingAxisName   = "YAxis";
            primaryAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis              = primaryAxis;

            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Maximum               = new NSNumber(-100);
            secondaryAxis.Minimum               = new NSNumber(100);
            secondaryAxis.Interval              = new NSNumber(20);
            secondaryAxis.CrossesAt             = 8;
            secondaryAxis.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Shift;
            secondaryAxis.Name               = new NSString("YAxis");
            secondaryAxis.CrossingAxisName   = "XAxis";
            secondaryAxis.ShowMajorGridLines = false;
            secondaryAxis.ShowMinorGridLines = false;
            chart.SecondaryAxis              = secondaryAxis;

            ChartViewModel dataModel = new ChartViewModel();

            SFScatterSeries series = new SFScatterSeries();

            series.ScatterWidth       = 15;
            series.ScatterHeight      = 15;
            series.ItemsSource        = dataModel.AxisCrossingData;
            series.XBindingPath       = "XValue";
            series.YBindingPath       = "YValue";
            series.ColorModel.Palette = SFChartColorPalette.Natural;
            series.EnableTooltip      = true;


            chart.Behaviors.Add(new SFChartZoomPanBehavior()
            {
                EnableSelectionZooming = false
            });
            chart.Delegate = new CustomDelegate();
            chart.Series.Add(series);
            this.AddSubview(chart);
        }
コード例 #14
0
ファイル: Trendlines.cs プロジェクト: ahhassan3/xamarin-demos
        private SFChart GetMeterDevationChart()
        {
            var sfchart = new SFChart();

            sfchart.Title.Text = "Distance Measurement";

            sfchart.Legend.Visible      = true;
            sfchart.Legend.DockPosition = SFChartLegendPosition.Top;
            sfchart.Legend.IconHeight   = 14;
            sfchart.Legend.IconWidth    = 14;
            sfchart.ColorModel.Palette  = SFChartColorPalette.Natural;

            SFNumericalAxis numericalaxis = new SFNumericalAxis();

            numericalaxis.AxisLineStyle.LineWidth  = 0;
            numericalaxis.MajorTickStyle.LineWidth = 0;
            numericalaxis.Title.Text = new Foundation.NSString("Meters");
            sfchart.SecondaryAxis    = numericalaxis;

            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.ShowMajorGridLines = false;
            primaryAxis.Title.Text         = new Foundation.NSString("Seconds");
            primaryAxis.ShowMinorGridLines = false;
            sfchart.PrimaryAxis            = primaryAxis;

            splineSeries2              = new SFSplineSeries();
            splineSeries2.ItemsSource  = ChartViewModel.GetTrendlineDataSource2();
            splineSeries2.XBindingPath = "XValue";
            splineSeries2.YBindingPath = "YValue";
            splineSeries2.Label        = "Rupees";
            splineSeries2.LegendIcon   = SFChartLegendIcon.SeriesType;

            splineSeries2.DataMarker.ShowMarker        = true;
            splineSeries2.DataMarker.ShowLabel         = false;
            splineSeries2.DataMarker.MarkerHeight      = 5;
            splineSeries2.DataMarker.MarkerWidth       = 5;
            splineSeries2.DataMarker.MarkerBorderWidth = 2;
            splineSeries2.DataMarker.MarkerBorderColor = UIColor.FromName("#00bdae");

            splineSeries2.Trendlines = new ChartTrendlineCollection();
            powerTrendline           = new SFChartTrendline()
            {
                Type       = SFTrendlineType.Power,
                LineColor  = UIColor.FromRGB(201, 23, 97),
                LegendIcon = SFChartLegendIcon.SeriesType,
                Label      = "Power"
            };

            splineSeries2.Trendlines.Add(powerTrendline);
            sfchart.Series.Add(splineSeries2);
            return(sfchart);
        }
コード例 #15
0
ファイル: Line.cs プロジェクト: IanLeatherbury/tryfsharpforms
		public Line ()
		{
			SFChart chart = new SFChart ();
			SFCategoryAxis primaryAxis = new SFCategoryAxis ();
			chart.PrimaryAxis = primaryAxis;
			chart.PrimaryAxis.PlotOffset	= 10;
			SFNumericalAxis secondaryAxis = new SFNumericalAxis ();
			chart.SecondaryAxis = secondaryAxis;
			ChartLineChartDataSource dataModel = new ChartLineChartDataSource ();
			chart.DataSource = dataModel as SFChartDataSource;
			this.control = chart;
		}
コード例 #16
0
        private SFChart GetSalseDeviationChart()
        {
            var sfchart = new SFChart();

            sfchart.Title.Text = "Average Sales Comparison";

            sfchart.Legend.Visible      = true;
            sfchart.Legend.DockPosition = SFChartLegendPosition.Top;
            sfchart.Legend.IconHeight   = 14;
            sfchart.Legend.IconWidth    = 14;
            sfchart.ColorModel.Palette  = SFChartColorPalette.Natural;
            numericalaxis = new SFNumericalAxis();
            numericalaxis.AxisLineStyle.LineWidth  = 0;
            numericalaxis.MajorTickStyle.LineWidth = 0;
            numericalaxis.Title.Text = new Foundation.NSString("Number of Customer");
            sfchart.SecondaryAxis    = numericalaxis;

            SFDateTimeAxis primaryAxis = new SFDateTimeAxis();

            primaryAxis.ShowMajorGridLines = false;
            primaryAxis.IntervalType       = SFChartDateTimeIntervalType.Months;
            primaryAxis.Interval           = new NSNumber(1);
            primaryAxis.Title.Text         = new Foundation.NSString("Months");
            NSDateFormatter formatter = new NSDateFormatter();

            formatter.DateFormat = new NSString("MMM");
            primaryAxis.LabelStyle.LabelFormatter = formatter;
            primaryAxis.ShowMinorGridLines        = false;
            sfchart.PrimaryAxis = primaryAxis;

            salseColumnSeries = new SFColumnSeries();
            salseColumnSeries.XBindingPath = "XValue";
            salseColumnSeries.YBindingPath = "YValue";
            salseColumnSeries.ItemsSource  = ChartViewModel.GetTrendlineDataSource1("Linear");
            salseColumnSeries.Label        = "Salse";
            salseColumnSeries.LegendIcon   = SFChartLegendIcon.SeriesType;

            salseColumnSeries.Trendlines = new ChartTrendlineCollection();
            linearTrendline = new SFChartTrendline()
            {
                Type            = SFTrendlineType.Linear,
                LineColor       = UIColor.FromRGB(64, 64, 65),
                LegendIcon      = SFChartLegendIcon.SeriesType,
                Label           = "Linear",
                PolynomialOrder = 3,
            };

            salseColumnSeries.Trendlines.Add(linearTrendline);
            sfchart.Series.Add(salseColumnSeries);

            return(sfchart);
        }
コード例 #17
0
		public SplineArea ()
		{
			SFChart chart 						= new SFChart ();
			SFCategoryAxis primaryAxis 			= new SFCategoryAxis ();
			primaryAxis.EdgeLabelsDrawingMode   = SFChartAxisEdgeLabelsDrawingMode.Shift;
			chart.PrimaryAxis 					= primaryAxis;
			SFNumericalAxis secondaryAxis 		= new SFNumericalAxis ();
			secondaryAxis.Interval 				= NSObject.FromObject(5);
			chart.SecondaryAxis 				= secondaryAxis;
			ChartSplineAreaDataSource dataModel = new ChartSplineAreaDataSource ();
			chart.DataSource 					= dataModel as SFChartDataSource;
			this.control 						= chart;
		}
コード例 #18
0
        public Line()
        {
            SFChart chart = new SFChart();

            chart.Title.Text         = new NSString("Efficiency of oil fired power production");
            chart.ColorModel.Palette = SFChartColorPalette.Natural;

            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.Title.Text     = new NSString("Year");
            primaryAxis.LabelPlacement = SFChartLabelPlacement.BetweenTicks;
            chart.PrimaryAxis          = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Title.Text = new NSString("Efficiency (%)");
            secondaryAxis.Minimum    = new NSNumber(25);
            secondaryAxis.Maximum    = new NSNumber(50);
            chart.SecondaryAxis      = secondaryAxis;
            ChartViewModel dataModel = new ChartViewModel();

            SFLineSeries series1 = new SFLineSeries();

            series1.ItemsSource           = dataModel.LineData1;
            series1.XBindingPath          = "XValue";
            series1.YBindingPath          = "YValue";
            series1.EnableTooltip         = true;
            series1.Label                 = "India";
            series1.EnableAnimation       = true;
            series1.DataMarker.ShowMarker = true;
            chart.Series.Add(series1);

            SFLineSeries series2 = new SFLineSeries();

            series2.ItemsSource           = dataModel.LineData2;
            series2.XBindingPath          = "XValue";
            series2.YBindingPath          = "YValue";
            series2.EnableTooltip         = true;
            series2.Label                 = "France";
            series2.EnableAnimation       = true;
            series2.DataMarker.ShowMarker = true;
            chart.Series.Add(series2);

            chart.Legend.Visible = true;
            chart.Legend.ToggleSeriesVisibility = true;
            chart.Legend.IconWidth    = 14;
            chart.Legend.IconHeight   = 14;
            chart.Legend.DockPosition = SFChartLegendPosition.Bottom;
            chart.AddChartBehavior(new SFChartZoomPanBehavior());

            this.AddSubview(chart);
        }
コード例 #19
0
        public StripLines()
        {
            SFChart chart = new SFChart();

            chart.Title.Text = new NSString("Average temperature for the year 2014");
            chart.Title.Font = UIFont.FromName("Helvetica neue", 14);
            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.LabelPlacement   = SFChartLabelPlacement.BetweenTicks;
            chart.PrimaryAxis            = primaryAxis;
            chart.PrimaryAxis.Title.Text = new NSString("Months");
            SFNumericalAxis numeric = new SFNumericalAxis();

            numeric.Minimum    = NSObject.FromObject(28);
            numeric.Maximum    = NSObject.FromObject(52);
            numeric.Interval   = NSObject.FromObject(2);
            numeric.Title.Text = new NSString("Temperature in Celsius");
            SFChartNumericalStripLine strip1 = new SFChartNumericalStripLine();

            strip1.Start           = 28;
            strip1.Width           = 8;
            strip1.Text            = new NSString("Low Temperature");
            strip1.BackgroundColor = UIColor.FromRGBA((nfloat)0.7843, (nfloat)0.8196, (nfloat)0.4275, (nfloat)1.0);

            numeric.AddStripLine(strip1);

            SFChartNumericalStripLine strip2 = new SFChartNumericalStripLine();

            strip2.Start           = 36;
            strip2.Width           = 8;
            strip2.Text            = new NSString("Average Temperature");
            strip2.BackgroundColor = UIColor.FromRGBA((nfloat)0.9569, (nfloat)0.7804, (nfloat)0.3843, (nfloat)1.0);

            numeric.AddStripLine(strip2);

            SFChartNumericalStripLine strip3 = new SFChartNumericalStripLine();

            strip3.Start           = 44;
            strip3.Width           = 8;
            strip3.Text            = new NSString("High Temperature");
            strip3.BackgroundColor = UIColor.FromRGBA((nfloat)0.9373, (nfloat)0.4706, (nfloat)0.4706, (nfloat)1.0);

            numeric.AddStripLine(strip3);

            chart.SecondaryAxis = numeric;
            ChartStripLineDataSource dataModel = new ChartStripLineDataSource();

            chart.DataSource = dataModel as SFChartDataSource;
            this.control     = chart;
        }
コード例 #20
0
		public Scatter ()
		{
			SFChart chart 			        = new SFChart ();
			SFCategoryAxis primary 			= new SFCategoryAxis (){PlotOffset = 20};
			primary.ShowMajorGridLines 		= false;
			chart.PrimaryAxis 			    = primary;
			SFNumericalAxis secondary 		= new SFNumericalAxis (){PlotOffset = 20};
			secondary.ShowMajorGridLines    = false;
			chart.SecondaryAxis 			= secondary;
			ChartScatterSource dataModel 	= new ChartScatterSource ();
			chart.DataSource 		        = dataModel as SFChartDataSource;
			this.control 				    = chart;

		}
コード例 #21
0
        public ZoomingandPanning()
        {
            chart = new SFChart();
            chart.ColorModel.Palette = SFChartColorPalette.Natural;
            chart.Title.Text         = new NSString("World Countries Details");
            SFNumericalAxis primary = new SFNumericalAxis();

            primary.ShowMajorGridLines   = false;
            chart.PrimaryAxis            = primary;
            chart.PrimaryAxis.Title.Text = new NSString("Literacy Rate");
            SFNumericalAxis secondary = new SFNumericalAxis();

            secondary.ShowMajorGridLines   = false;
            secondary.Minimum              = new NSNumber(-500);
            secondary.Maximum              = new NSNumber(700);
            chart.SecondaryAxis            = secondary;
            chart.SecondaryAxis.Title.Text = new NSString("GDP Growth Rate");

            ChartViewModel dataModel = new ChartViewModel();

            SFScatterSeries series = new SFScatterSeries();

            series.ItemsSource  = dataModel.ScatterDataZoomPan;
            series.XBindingPath = "XValue";
            series.YBindingPath = "YValue";

            chart.Series.Add(series);

            label                 = new UILabel();
            label.Text            = "Pinch to zoom or double tap and drag to select a region to zoom in";
            label.Font            = UIFont.FromName("Helvetica", 12f);
            label.TextAlignment   = UITextAlignment.Center;
            label.LineBreakMode   = UILineBreakMode.WordWrap;
            label.Lines           = 2;
            label.BackgroundColor = UIColor.FromRGB(249, 249, 249);
            label.TextColor       = UIColor.FromRGB(79, 86, 91);
            chart.AddChartBehavior(new SFChartZoomPanBehavior()
            {
                EnableSelectionZooming = true
            });
            this.AddSubview(chart);

            CALayer topLine = new CALayer();

            topLine.Frame           = new CGRect(0, 0, UIScreen.MainScreen.ApplicationFrame.Width, 0.5);
            topLine.BackgroundColor = UIColor.FromRGB(178, 178, 178).CGColor;
            label.Layer.AddSublayer(topLine);

            this.AddSubview(label);
        }
コード例 #22
0
        public Histogram()
        {
            SFChart chart = new SFChart();

            chart.Title.Text         = new NSString("Examination Result");
            chart.ColorModel.Palette = SFChartColorPalette.Natural;

            SFNumericalAxis primary = new SFNumericalAxis();

            primary.Title.Text            = new NSString("Score of Final Examination");
            primary.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Shift;
            primary.ShowMajorGridLines    = false;
            chart.PrimaryAxis             = primary;

            chart.SecondaryAxis                          = new SFNumericalAxis();
            chart.SecondaryAxis.Title.Text               = new NSString("Number of Students");
            chart.SecondaryAxis.ShowMajorGridLines       = true;
            chart.SecondaryAxis.Visible                  = true;
            chart.SecondaryAxis.AxisLineStyle.LineWidth  = 0;
            chart.SecondaryAxis.MajorTickStyle.LineWidth = new NSNumber(0);
            ChartViewModel dataModel = new ChartViewModel();

            SFHistogramSeries series1 = new SFHistogramSeries();

            series1.ItemsSource          = dataModel.HistogramData;
            series1.XBindingPath         = "YValue";
            series1.YBindingPath         = "XValue";
            series1.EnableTooltip        = true;
            series1.Interval             = 20;
            series1.StrokeColor          = UIColor.White;
            series1.StrokeWidth          = 1;
            series1.EnableAnimation      = true;
            series1.LegendIcon           = SFChartLegendIcon.SeriesType;
            series1.DataMarker.ShowLabel = true;
            series1.DataMarker.LabelStyle.LabelPosition   = SFChartDataMarkerLabelPosition.Inner;
            series1.DataMarker.LabelStyle.BackgroundColor = UIColor.Clear;
            series1.DataMarker.LabelStyle.Color           = UIColor.White;
            chart.Series.Add(series1);

            chart.Delegate = new HistogramTooltipFormatter();
            var tooltip = new SFChartTooltipBehavior();

            tooltip.BackgroundColor = UIColor.FromRGBA(64.0f / 255.0f, 64.0f / 255.0f, 65.0f / 255.0f, 1.0f);
            chart.AddChartBehavior(tooltip);

            this.AddSubview(chart);

            this.OptionView = new UIView();
        }
コード例 #23
0
ファイル: Line.cs プロジェクト: IanLeatherbury/tryfsharpforms
        public Line()
        {
            SFChart        chart       = new SFChart();
            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            chart.PrimaryAxis            = primaryAxis;
            chart.PrimaryAxis.PlotOffset = 10;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            chart.SecondaryAxis = secondaryAxis;
            ChartLineChartDataSource dataModel = new ChartLineChartDataSource();

            chart.DataSource = dataModel as SFChartDataSource;
            this.control     = chart;
        }
コード例 #24
0
        public SplineArea()
        {
            SFChart        chart       = new SFChart();
            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.EdgeLabelsDrawingMode = SFChartAxisEdgeLabelsDrawingMode.Shift;
            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Interval = NSObject.FromObject(5);
            chart.SecondaryAxis    = secondaryAxis;
            ChartSplineAreaDataSource dataModel = new ChartSplineAreaDataSource();

            chart.DataSource = dataModel as SFChartDataSource;
            this.control     = chart;
        }
コード例 #25
0
        public GettingStartedRangeNavigator()
        {
            chart               = new SFChart();
            primaryAxis         = new SFDateTimeAxis();
            primaryAxis.Minimum = DateTimeToNSDate(new DateTime(2015, 5, 15, 0, 0, 0));
            primaryAxis.Maximum = DateTimeToNSDate(new DateTime(2015, 8, 15, 0, 0, 0));
            chart.PrimaryAxis   = primaryAxis;
            secondaryAxis       = new SFNumericalAxis();
            chart.SecondaryAxis = secondaryAxis;

            SFSplineAreaSeries series = new SFSplineAreaSeries();

            series.Alpha        = 0.6f;
            series.BorderColor  = UIColor.FromRGBA(255.0f / 255.0f, 191.0f / 255.0f, 0.0f / 255.0f, 1.0f);
            series.ItemsSource  = dataModel.DateTimeRangeData;
            series.XBindingPath = "XValue";
            series.YBindingPath = "YValue";
            chart.Series.Add(series);
            this.AddSubview(chart);

            rangeNavigator          = new SFDateTimeRangeNavigator();
            rangeNavigator.Delegate = new RangeNavigatorDelegate(primaryAxis);

            SFSplineAreaSeries series1 = new SFSplineAreaSeries();

            series1.Alpha        = 0.6f;
            series1.BorderColor  = UIColor.FromRGBA(255.0f / 255.0f, 191.0f / 255.0f, 0.0f / 255.0f, 1.0f);
            series1.ItemsSource  = dataModel.DateTimeRangeData;
            series1.XBindingPath = "XValue";
            series1.YBindingPath = "YValue";
            chart.Series.Add(series1);
            ((SFChart)rangeNavigator.Content).Series.Add(series1);

            DateTime minDate   = new DateTime(2015, 1, 1, 0, 0, 0);
            DateTime maxDate   = new DateTime(2015, 12, 1, 0, 0, 0);
            DateTime startDate = new DateTime(2015, 5, 15, 0, 0, 0);
            DateTime endDate   = new DateTime(2015, 8, 15, 0, 0, 0);

            rangeNavigator.Minimum        = DateTimeToNSDate(minDate);
            rangeNavigator.Maximum        = DateTimeToNSDate(maxDate);
            rangeNavigator.ViewRangeStart = DateTimeToNSDate(startDate);
            rangeNavigator.ViewRangeEnd   = DateTimeToNSDate(endDate);

            this.AddSubview(rangeNavigator);

            //this.control				    = this;
        }
コード例 #26
0
		public LiveUpdate ()
		{

			chart 							= new SFChart ();
			SFNumericalAxis primaryAxis 	= new SFNumericalAxis ();
			chart.PrimaryAxis 				= primaryAxis;
			SFNumericalAxis secondaryAxis 	= new SFNumericalAxis ();
			secondaryAxis.Minimum 			= NSObject.FromObject( -1.5);
			secondaryAxis.Maximum 			= NSObject.FromObject(1.5);
			secondaryAxis.Interval 			= NSObject.FromObject( 0.5);
			chart.SecondaryAxis 			= secondaryAxis;
			dataModel 						= new LiveUpdateDataSource ();
			chart.DataSource 				= dataModel as SFChartDataSource;
			this.control = chart;
			UpdateData ();

		}
コード例 #27
0
        public LiveUpdate()
        {
            chart = new SFChart();
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Minimum  = NSObject.FromObject(-1.5);
            secondaryAxis.Maximum  = NSObject.FromObject(1.5);
            secondaryAxis.Interval = NSObject.FromObject(0.5);
            chart.SecondaryAxis    = secondaryAxis;
            dataModel        = new LiveUpdateDataSource();
            chart.DataSource = dataModel as SFChartDataSource;
            this.control     = chart;
            UpdateData();
        }
コード例 #28
0
        public Bubble()
        {
            SFChart chart = new SFChart();

            chart.Title.Text = new NSString("World Countries Details");
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            chart.PrimaryAxis              = primaryAxis;
            primaryAxis.Minimum            = new NSNumber(60);
            primaryAxis.Maximum            = new NSNumber(100);
            primaryAxis.Interval           = new NSNumber(5);
            primaryAxis.ShowMinorGridLines = false;
            primaryAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis.Title.Text   = new NSString("Literacy Rate");

            chart.SecondaryAxis                    = new SFNumericalAxis();
            chart.SecondaryAxis.Title.Text         = new NSString("GDP Growth Rate");
            chart.SecondaryAxis.Minimum            = new NSNumber(0);
            chart.SecondaryAxis.Maximum            = new NSNumber(10);
            chart.SecondaryAxis.Interval           = new NSNumber(2.5);
            chart.SecondaryAxis.ShowMinorGridLines = false;
            chart.SecondaryAxis.ShowMajorGridLines = false;
            chart.Delegate = new TooltipFormatter();
            ChartViewModel dataModel = new ChartViewModel();

            SFBubbleSeries series = new SFBubbleSeries();

            series.EnableTooltip      = true;
            series.Alpha              = 0.6f;
            series.ItemsSource        = dataModel.BubbleData;
            series.XBindingPath       = "XValue";
            series.YBindingPath       = "YValue";
            series.Size               = "Size";
            series.MaximumRadius      = 40;
            series.MinimumRadius      = 5;
            series.ColorModel.Palette = SFChartColorPalette.Natural;
            series.EnableAnimation    = true;
            chart.Series.Add(series);

            var tooltip = new SFChartTooltipBehavior();

            tooltip.BackgroundColor = UIColor.FromRGBA(64.0f / 255.0f, 64.0f / 255.0f, 65.0f / 255.0f, 1.0f);
            chart.AddChartBehavior(tooltip);

            this.AddSubview(chart);
        }
コード例 #29
0
        private SFChart GetMeterDevationChart()
        {
            var sfchart = new SFChart();

            sfchart.Title.Text = "Distance Measurement";

            sfchart.Legend.Visible      = true;
            sfchart.Legend.DockPosition = SFChartLegendPosition.Top;
            sfchart.Legend.IconHeight   = 14;
            sfchart.Legend.IconWidth    = 14;
            sfchart.ColorModel.Palette  = SFChartColorPalette.Natural;

            SFNumericalAxis numericalaxis1 = new SFNumericalAxis();

            numericalaxis1.AxisLineStyle.LineWidth  = 0;
            numericalaxis1.MajorTickStyle.LineWidth = 0;
            numericalaxis1.Title.Text = new Foundation.NSString("Meters");
            sfchart.SecondaryAxis     = numericalaxis1;

            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.ShowMajorGridLines = false;
            primaryAxis.Title.Text         = new Foundation.NSString("Seconds");
            primaryAxis.ShowMinorGridLines = false;
            sfchart.PrimaryAxis            = primaryAxis;

            powerColumnSeries              = new SFColumnSeries();
            powerColumnSeries.ItemsSource  = ChartViewModel.GetTrendlineDataSource2();
            powerColumnSeries.XBindingPath = "XValue";
            powerColumnSeries.YBindingPath = "YValue";
            powerColumnSeries.Label        = "Distance";
            powerColumnSeries.LegendIcon   = SFChartLegendIcon.SeriesType;

            powerColumnSeries.Trendlines = new ChartTrendlineCollection();
            powerTrendline = new SFChartTrendline()
            {
                Type       = SFTrendlineType.Power,
                LineColor  = UIColor.FromRGB(64, 64, 65),
                LegendIcon = SFChartLegendIcon.SeriesType,
                Label      = "Power"
            };

            powerColumnSeries.Trendlines.Add(powerTrendline);
            sfchart.Series.Add(powerColumnSeries);
            return(sfchart);
        }
コード例 #30
0
        public VerticalChart()
        {
            chart = new SFChart();
            chart.Legend.Visible = true;
            chart.Legend.ToggleSeriesVisibility = true;

            SFDateTimeAxis  xAxis     = new SFDateTimeAxis();
            NSDateFormatter formatter = new NSDateFormatter();

            formatter.DateFormat            = new NSString("mm:ss");
            xAxis.LabelStyle.LabelFormatter = formatter;
            xAxis.Title.Text         = new NSString("Time (s)");
            xAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis        = xAxis;

            SFNumericalAxis yAxis = new SFNumericalAxis();

            yAxis.Minimum            = new NSNumber(-10);
            yAxis.Maximum            = new NSNumber(10);
            yAxis.Interval           = new NSNumber(10);
            yAxis.Title.Text         = new NSString("Velocity(m/s)");
            yAxis.ShowMajorGridLines = false;
            chart.SecondaryAxis      = yAxis;

            chart.Title.Text = new NSString("Seismograph analysis of country");
            chart.Title.Font = UIFont.FromName("Helvetica neue", 15);

            dataModel = new ChartViewModel();
            SFFastLineSeries series = new SFFastLineSeries();

            series.LegendIcon        = SFChartLegendIcon.Circle;
            chart.Legend.IconWidth   = 14;
            chart.Legend.IconHeight  = 14;
            series.Label             = "Indonesia";
            series.ItemsSource       = dataModel.verticalData;
            series.XBindingPath      = "XValue";
            series.YBindingPath      = "YValue";
            series.IsTransposed      = true;
            series.EnableAnimation   = true;
            chart.ColorModel.Palette = SFChartColorPalette.Natural;
            chart.Series.Add(series);

            this.AddSubview(chart);
            UpdateData();
        }
コード例 #31
0
        public AutoScrolling()
        {
            chart = new SFChart();
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            primaryAxis.AutoScrollingDelta = 10;
            chart.PrimaryAxis = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            secondaryAxis.Minimum = NSObject.FromObject(0);
            secondaryAxis.Maximum = NSObject.FromObject(9);
            chart.SecondaryAxis   = secondaryAxis;
            dataModel             = new ChartViewModel();

            SFColumnSeries series = new SFColumnSeries();

            series.ColorModel.Palette = SFChartColorPalette.Natural;
            series.ItemsSource        = dataModel.data;
            series.XBindingPath       = "XValue";
            series.YBindingPath       = "YValue";
            chart.Series.Add(series);
            label                 = new UILabel();
            label.Text            = "In this demo, a data point is being added for every 500 milliseconds. The Chart is then automatically scrolled to display the fixed range of data points at the end. You can also pan to view previous data points. In this sample the delta value is 10";
            label.Font            = UIFont.FromName("Helvetica", 12f);
            label.TextAlignment   = UITextAlignment.Center;
            label.LineBreakMode   = UILineBreakMode.WordWrap;
            label.Lines           = 6;
            label.BackgroundColor = UIColor.FromRGB(249, 249, 249);
            label.TextColor       = UIColor.FromRGB(79, 86, 91);

            chart.AddChartBehavior(new SFChartZoomPanBehavior());

            this.AddSubview(chart);

            CALayer topLine = new CALayer();

            topLine.Frame           = new CGRect(0, 0, UIScreen.MainScreen.ApplicationFrame.Width, 0.5);
            topLine.BackgroundColor = UIColor.FromRGB(178, 178, 178).CGColor;
            label.Layer.AddSublayer(topLine);

            this.AddSubview(label);
            random = new Random();
            UpdateData();
        }
コード例 #32
0
        public BoxAndWhisker()
        {
            SFChart chart = new SFChart();

            chart.Title.Text       = new NSString("Employee Age Group in Various Department");
            chart.Title.EdgeInsets = new UIEdgeInsets(0, 0, 15, 0);

            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.LabelPlacement     = SFChartLabelPlacement.BetweenTicks;
            primaryAxis.ShowMajorGridLines = false;
            primaryAxis.Title.Text         = new NSString("Department");
            chart.PrimaryAxis = primaryAxis;

            SFNumericalAxis secoundaryAxis = new SFNumericalAxis();

            secoundaryAxis.Title.Text              = new NSString("Age");
            secoundaryAxis.Maximum                 = new NSNumber(60);
            secoundaryAxis.Minimum                 = new NSNumber(20);
            secoundaryAxis.Interval                = new NSNumber(5);
            secoundaryAxis.ShowMinorGridLines      = false;
            secoundaryAxis.AxisLineStyle.LineWidth = 0;
            secoundaryAxis.MajorTickStyle.LineSize = 0;
            chart.SecondaryAxis = secoundaryAxis;
            ChartViewModel dataModel = new ChartViewModel();

            SFBoxAndWhiskerSeries boxPlotSeries = new SFBoxAndWhiskerSeries();

            boxPlotSeries.ItemsSource             = dataModel.BoxAndWhiskerData;
            boxPlotSeries.XBindingPath            = "Department";
            boxPlotSeries.YBindingPath            = "EmployeeAges";
            boxPlotSeries.BoxPlotMode             = BoxPlotMode.Exclusive;
            boxPlotSeries.EnableTooltip           = true;
            boxPlotSeries.ShowMedian              = true;
            boxPlotSeries.ColorModel.Palette      = SFChartColorPalette.Custom;
            boxPlotSeries.ColorModel.CustomColors = NSArray.FromObjects(UIColor.FromRGBA(0 / 255.0f, 189 / 255.0f, 174 / 255.0f, 255 / 255.0f),
                                                                        UIColor.FromRGBA(128 / 255.0f, 132 / 255.0f, 232 / 255.0f, 255 / 255.0f),
                                                                        UIColor.FromRGBA(53 / 255.0f, 124 / 255.0f, 210 / 255.0f, 255 / 255.0f),
                                                                        UIColor.FromRGBA(229 / 255.0f, 101 / 255.0f, 144 / 255.0f, 255 / 255.0f),
                                                                        UIColor.FromRGBA(248 / 255.0f, 184 / 255.0f, 131 / 255.0f, 255 / 255.0f));
            chart.Series.Add(boxPlotSeries);

            this.AddSubview(chart);
        }
コード例 #33
0
		public StripLines ()
		{
			SFChart chart 						= new SFChart ();
			chart.Title.Text 			        = new NSString ("Average temperature for the year 2014");
			chart.Title.Font				    = UIFont.FromName ("Helvetica neue",14);
			SFCategoryAxis primaryAxis 			= new SFCategoryAxis ();
			primaryAxis.LabelPlacement			= SFChartLabelPlacement.BetweenTicks;
			chart.PrimaryAxis 					= primaryAxis;
			chart.PrimaryAxis.Title.Text        = new NSString ("Months");
			SFNumericalAxis numeric				= new SFNumericalAxis ();
			numeric.Minimum 					= NSObject.FromObject(28);
			numeric.Maximum 					= NSObject.FromObject(52);
			numeric.Interval 					= NSObject.FromObject(2);
			numeric.Title.Text  				= new NSString ("Temperature in Celsius");
			SFChartNumericalStripLine strip1 	= new SFChartNumericalStripLine ();
			strip1.Start                        = 28;
			strip1.Width                        = 8;
			strip1.Text                         = new NSString("Low Temperature");
			strip1.BackgroundColor              = UIColor.FromRGBA((nfloat)0.7843,(nfloat)0.8196,(nfloat)0.4275,(nfloat)1.0);

			numeric.AddStripLine (strip1);

			SFChartNumericalStripLine strip2 	= new SFChartNumericalStripLine ();
			strip2.Start                        = 36;
			strip2.Width                        = 8;
			strip2.Text                         = new NSString("Average Temperature");
			strip2.BackgroundColor              = UIColor.FromRGBA((nfloat)0.9569,(nfloat)0.7804,(nfloat)0.3843,(nfloat)1.0);

			numeric.AddStripLine (strip2);

			SFChartNumericalStripLine strip3 	= new SFChartNumericalStripLine ();
			strip3.Start                        = 44;
			strip3.Width                        = 8;
			strip3.Text                         = new NSString("High Temperature");
			strip3.BackgroundColor              = UIColor.FromRGBA((nfloat)0.9373,(nfloat)0.4706,(nfloat)0.4706,(nfloat)1.0);

			numeric.AddStripLine (strip3);

			chart.SecondaryAxis 		        = numeric;
			ChartStripLineDataSource dataModel  = new ChartStripLineDataSource ();
			chart.DataSource 					= dataModel as SFChartDataSource;
			this.control 						= chart;
		}
コード例 #34
0
        public SplineChartView(string chartTitle)
        {
            SFChart chart 						= new SFChart ();
            chart.Title.Text 					= new NSString (chartTitle);
            SFCategoryAxis primaryAxis 			= new SFCategoryAxis ();
            primaryAxis.Title.Text				= new NSString ("Year");
            primaryAxis.Interval 				= new NSNumber (1);
            chart.PrimaryAxis 					= primaryAxis;
            SFNumericalAxis secondaryAxis 		= new SFNumericalAxis ();
            secondaryAxis.Title.Text			= new NSString ("Rate (M)");
            chart.SecondaryAxis 				= secondaryAxis;
            ChartSplineAreaDataSource dataModel = new ChartSplineAreaDataSource ();
            chart.DataSource 					= dataModel as SFChartDataSource;
            chart.ColorModel.Palette 			= SFChartColorPalette.TomotoSpectrum;

            chart.Legend.Visible 				= true;
            chart.Legend.DockPosition			= SFChartLegendPosition.Bottom;
            this.control 						= chart;
        }
コード例 #35
0
        public LineChartCell()
        {
            chart = new SFChart();
            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            primaryAxis.PlotOffset = 5;
            chart.PrimaryAxis      = primaryAxis;
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            chart.SecondaryAxis = secondaryAxis;
            dataModel           = new ChartLineDataSource();
            chart.DataSource    = dataModel as SFChartDataSource;
            chart.PrimaryAxis.ShowMajorGridLines   = false;
            chart.PrimaryAxis.Visible              = false;
            chart.SecondaryAxis.Visible            = false;
            chart.SecondaryAxis.ShowMajorGridLines = false;
            chart.Legend.Visible = false;
            this.AddSubview(chart);
            this.CanRenderUnLoad = false;
        }
コード例 #36
0
        public Bubble()
        {
            SFChart chart = new SFChart();

            chart.Title.Text = new NSString("World Countries Details");
            SFNumericalAxis primaryAxis = new SFNumericalAxis();

            chart.PrimaryAxis              = primaryAxis;
            primaryAxis.Minimum            = new NSNumber(50);
            primaryAxis.Maximum            = new NSNumber(110);
            primaryAxis.Interval           = new NSNumber(10);
            primaryAxis.ShowMinorGridLines = false;
            primaryAxis.ShowMajorGridLines = false;
            chart.PrimaryAxis.Title.Text   = new NSString("Literacy Rate");

            chart.SecondaryAxis                    = new SFNumericalAxis();
            chart.SecondaryAxis.Title.Text         = new NSString("GDP Growth Rate");
            chart.SecondaryAxis.Minimum            = new NSNumber(-2);
            chart.SecondaryAxis.Maximum            = new NSNumber(16);
            chart.SecondaryAxis.ShowMinorGridLines = false;
            chart.SecondaryAxis.ShowMajorGridLines = false;
            ChartViewModel dataModel = new ChartViewModel();

            SFBubbleSeries series = new SFBubbleSeries();

            series.EnableTooltip      = true;
            series.Alpha              = 0.6f;
            series.ItemsSource        = dataModel.BubbleData;
            series.XBindingPath       = "XValue";
            series.YBindingPath       = "YValue";
            series.Size               = "Size";
            series.MaximumRadius      = 20;
            series.MinimumRadius      = 5;
            series.ColorModel.Palette = SFChartColorPalette.Natural;
            series.EnableAnimation    = true;
            chart.Series.Add(series);

            chart.AddChartBehavior(new SFChartZoomPanBehavior());

            this.AddSubview(chart);
        }
コード例 #37
0
ファイル: RangeBar.cs プロジェクト: yo1249009/xamarin-demos
        public RangeBar()
        {
            chart            = new SFChart();
            chart.Title.Text = new NSString("Pipeline Volume");
            chart.Title.Font = UIFont.SystemFontOfSize(13);

            SFCategoryAxis categoryaxis = new SFCategoryAxis();

            categoryaxis.ShowMajorGridLines      = false;
            categoryaxis.AxisLineStyle.LineWidth = 0;
            categoryaxis.MajorTickStyle.LineSize = 0;
            categoryaxis.LabelStyle.Color        = UIColor.Black;
            categoryaxis.LabelStyle.Font         = UIFont.SystemFontOfSize(11);
            chart.PrimaryAxis = categoryaxis;

            SFNumericalAxis numericalaxis = new SFNumericalAxis();

            numericalaxis.Visible                 = false;
            numericalaxis.ShowMajorGridLines      = false;
            numericalaxis.AxisLineStyle.LineWidth = 0;
            numericalaxis.MajorTickStyle.LineSize = 0;
            chart.SecondaryAxis = numericalaxis;
            ChartViewModel dataModel = new ChartViewModel();

            SFRangeColumnSeries rangeColumnSeries = new SFRangeColumnSeries();

            rangeColumnSeries.ItemsSource          = dataModel.RangeBarData;
            rangeColumnSeries.XBindingPath         = "XValue";
            rangeColumnSeries.High                 = "YValue";
            rangeColumnSeries.Low                  = string.Empty;
            rangeColumnSeries.DataMarker.ShowLabel = true;
            NSNumberFormatter formatter = new NSNumberFormatter();

            formatter.PositiveFormat = "$#,###";
            rangeColumnSeries.DataMarker.LabelStyle.LabelFormatter = formatter;
            rangeColumnSeries.IsTransposed       = true;
            rangeColumnSeries.ColorModel.Palette = SFChartColorPalette.Natural;
            chart.Series.Add(rangeColumnSeries);

            this.AddSubview(chart);
        }
コード例 #38
0
        public override void ViewDidLoad()
        {
            View.BackgroundColor = UIColor.White;

            base.ViewDidLoad();

            SFChart chart = new SFChart();

            chart.Frame = new CGRect(0, 200, 300, 300);

            //Adding Primary Axis for the Chart.
            SFCategoryAxis primaryAxis = new SFCategoryAxis();

            chart.PrimaryAxis = primaryAxis;

            //Adding Secondary Axis for the Chart.
            SFNumericalAxis secondaryAxis = new SFNumericalAxis();

            chart.SecondaryAxis = secondaryAxis;

            this.View.AddSubview(chart);

            //Initializing column series
            SFColumnSeries series = new SFColumnSeries()
            {
                XBindingPath = "price_btc",

                YBindingPath = "timestamp"
            };

            chart.Series.Add(series);

            var set = this.CreateBindingSet <SecondView, SecondViewModel>();

            //set.Bind(series).For(s => s.ItemsSource).To(vm => vm.CoinHistory);
            set.Bind(series).For("ItemsSource").To(vm => vm.CoinHistory);

            //set.Bind(loadBtn).To(vm => vm.LoadDataCommand);
            set.Apply();
        }
コード例 #39
0
		public LineChartCell ()
		{
			chart = new SFChart ();
			SFCategoryAxis primaryAxis 		= new SFCategoryAxis ();
			primaryAxis.PlotOffset 			= 5;
			chart.PrimaryAxis 				= primaryAxis;
			SFNumericalAxis secondaryAxis 	= new SFNumericalAxis ();
			chart.SecondaryAxis 			= secondaryAxis;
			dataModel	= new ChartLineDataSource ();
			chart.DataSource = dataModel as SFChartDataSource;
			chart.PrimaryAxis.ShowMajorGridLines = false;
			chart.PrimaryAxis.Visible = false;
			chart.SecondaryAxis.Visible = false;
			chart.SecondaryAxis.ShowMajorGridLines = false;
			chart.Legend.Visible = false;
			this.AddSubview (chart);
			this.CanRenderUnLoad = false;
		}