Exemplo n.º 1
0
        public override void LoadView()
        {
            // Create a chart view that will display the chart.
            m_view = new NChartView();

            // Paste your license key here.
            m_view.Chart.LicenseKey = "";

            // Switch on antialiasing.
            m_view.Chart.ShouldAntialias = true;

            // Switch 3D on.
            m_view.Chart.DrawIn3D = true;
            // Margin to ensure some free space for the iOS status bar and Y-Axis tick titles.
            m_view.Chart.CartesianSystem.Margin = new NChartMargin(50.0f, 50.0f, 10.0f, 20.0f);
            m_view.Chart.PolarSystem.Margin     = new NChartMargin(50.0f, 50.0f, 10.0f, 20.0f);

            // Create series that will be displayed on the chart.
            NChartSurfaceSeries series = new NChartSurfaceSeries();

            series.DataSource = this;
            series.Tag        = 0;
            series.Brush      = new NChartSolidColorBrush(UIColor.FromRGB(97, 206, 231));
            m_view.Chart.AddSeries(series);

            m_view.Chart.CartesianSystem.XAxis.HasOffset = false;
            m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
            m_view.Chart.CartesianSystem.ZAxis.HasOffset = false;

            // Update data in the chart.
            m_view.Chart.UpdateData();

            // Set chart view to the controller.
            this.View = m_view;
        }
Exemplo n.º 2
0
        private void LoadView()
        {
            // Paste your license key here.
            mNChartView.Chart.LicenseKey = "";

            // Margin to ensure some free space for the iOS status bar.
            mNChartView.Chart.CartesianSystem.Margin = new NChartMargin(10.0f, 10.0f, 10.0f, 20.0f);

            // We'll use 3D chart.
            mNChartView.Chart.DrawIn3D = true;

            // Create series that will be displayed on the chart.
            NChartSurfaceSeries series = new NChartSurfaceSeries();

            // Set data source for the series.
            series.DataSource = this;
            // Add series to the chart.
            mNChartView.Chart.AddSeries(series);

            // Create brush scale for series.
            // First create an array of solid color brushes with the scale colors.
            NChartBrush[] brushes =
            {
                new NChartSolidColorBrush(Color.Red),
                new NChartSolidColorBrush(Color.Yellow),
                new NChartSolidColorBrush(Color.Green),
                new NChartSolidColorBrush(Color.Cyan)
            };
            // Then create array of values that will indicate intervals to choose colors. Note, that the rule of getting brush
            // from the scale for given value x is:
            // if x <= values[0] then choose brush[0]
            // else if x > values[i] and x <= values[i + 1] then choose brush[i + 1], i = 0 .. n - 1, n is number of values
            // else if x > values[n - 1] then choose brush[n]
            // This is why array of brushes should have one more element than array of values.
            Number[] values = { (Number)(-0.5), (Number)(0.0), (Number)(0.5) };
            // Now create the brush scale itself.
            NChartBrushScale scale = new NChartBrushScale(brushes, values);

            // If you want smooth color transitions, let this line commented.
            // scale.IsGradient = false;
            // Assign the scale to the series.
            series.Scale = scale;

            // You probably want to have a legend on the chart displaying the scale. So create one.
            NChartScaleLegend scaleLegend = new NChartScaleLegend(scale);

            // Let it be on the left. Feel free to experiment with different locations.
            scaleLegend.BlockAlignment = NChartLegendBlockAlignment.Left;
            // Let it have a single column.
            scaleLegend.ColumnCount = 1;
            // Set the delegate for the legend to customize the strings in the entries. Do not assign the delegate if the
            // default behavior is ok for you.
            scaleLegend.ScaleDelegate = this;
            // Add the legend to the chart.
            mNChartView.Chart.AddScaleLegend(scaleLegend);

            // Update data in the chart.
            mNChartView.Chart.UpdateData();
        }
Exemplo n.º 3
0
        void CreateSeries()
        {
            NChartSurfaceSeries series = new NChartSurfaceSeries();

            series.DataSource = this;
            series.Tag        = 0;
            series.Brush      = new NChartSolidColorBrush(Color.Argb(255, (int)(0.38 * 255), (int)(0.8 * 255), (int)(0.91 * 255)));
            mNChartView.Chart.AddSeries(series);

            mNChartView.Chart.CartesianSystem.XAxis.HasOffset = false;
            mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
            mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = false;
        }
		void CreateSeries ()
		{
			// Create series.
			switch (type) {
			case SeriesType.Column2D:
			case SeriesType.Column3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartColumnSeries series = new NChartColumnSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					NChartColumnSeriesSettings settings = new NChartColumnSeriesSettings ();
					settings.CylindersResolution = 4;
					settings.ShouldSmoothCylinders = false;
					m_view.Chart.AddSeriesSettings (settings);
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.ColumnCylinder:
				{
					for (int i = 0; i < 3; ++i) {
						NChartColumnSeries series = new NChartColumnSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					NChartColumnSeriesSettings settings = new NChartColumnSeriesSettings ();
					settings.CylindersResolution = 20;
					settings.ShouldSmoothCylinders = true;
					m_view.Chart.AddSeriesSettings (settings);
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Bar2D:
			case SeriesType.Bar3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartBarSeries series = new NChartBarSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					NChartBarSeriesSettings settings = new NChartBarSeriesSettings ();
					settings.CylindersResolution = 4;
					settings.ShouldSmoothCylinders = false;
					m_view.Chart.AddSeriesSettings (settings);
					m_view.Chart.CartesianSystem.XAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.BarCylinder:
				{
					for (int i = 0; i < 3; ++i) {
						NChartBarSeries series = new NChartBarSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					NChartBarSeriesSettings settings = new NChartBarSeriesSettings ();
					settings.CylindersResolution = 20;
					settings.ShouldSmoothCylinders = true;
					m_view.Chart.AddSeriesSettings (settings);
					m_view.Chart.CartesianSystem.XAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Area2D:
			case SeriesType.Area3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartAreaSeries series = new NChartAreaSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						series.Brush.Opacity = m_view.Chart.DrawIn3D ? 1.0f : 0.8f;
						m_view.Chart.AddSeries (series);
					}
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Line2D:
			case SeriesType.Line3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartLineSeries series = new NChartLineSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						series.LineThickness = 3.0f;
						m_view.Chart.AddSeries (series);
					}
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Step2D:
			case SeriesType.Step3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartStepSeries series = new NChartStepSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						series.LineThickness = 3.0f;
						m_view.Chart.AddSeries (series);
					}
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Ribbon:
				{
					for (int i = 0; i < 3; ++i) {
						NChartRibbonSeries series = new NChartRibbonSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Pie2D:
			case SeriesType.Pie3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartPieSeries series = new NChartPieSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					NChartPieSeriesSettings settings = new NChartPieSeriesSettings ();
					settings.HoleRatio = 0.0f;
					m_view.Chart.AddSeriesSettings (settings);
				}
				break;

			case SeriesType.Doughnut2D:
			case SeriesType.Doughnut3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartPieSeries series = new NChartPieSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}
					NChartPieSeriesSettings settings = new NChartPieSeriesSettings ();
					settings.HoleRatio = 0.1f;
					m_view.Chart.AddSeriesSettings (settings);
				}
				break;

			case SeriesType.Bubble2D:
			case SeriesType.Bubble3D:
			case SeriesType.Scatter2D:
			case SeriesType.Scatter3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartBubbleSeries series = new NChartBubbleSeries ();
						series.DataSource = this;
						series.Tag = i;
						m_view.Chart.AddSeries (series);
					}
					m_view.Chart.CartesianSystem.XAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = false;
				}
				break;

			case SeriesType.Surface:
				{
					NChartSurfaceSeries series = new NChartSurfaceSeries ();
					series.DataSource = this;
					series.Tag = 0;
					m_view.Chart.AddSeries (series);

					m_view.Chart.CartesianSystem.XAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = false;
				}
				break;

			case SeriesType.Candlestick2D:
			case SeriesType.Candlestick3D:
				{
					NChartCandlestickSeries series = new NChartCandlestickSeries ();
					series.DataSource = this;
					series.Tag = 0;
					series.PositiveColor = UIColor.FromRGB (73, 226, 141);
					series.PositiveBorderColor = UIColor.FromRGB (65, 204, 38);
					series.NegativeColor = UIColor.FromRGB (221, 73, 73);
					series.NegativeBorderColor = UIColor.FromRGB (199, 15, 50);
					series.BorderThickness = 3.0f;
					m_view.Chart.AddSeries (series);

					NChartCandlestickSeriesSettings settings = new NChartCandlestickSeriesSettings ();
					settings.CylindersResolution = 20;
					m_view.Chart.AddSeriesSettings (settings);
					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.OHLC2D:
			case SeriesType.OHLC3D:
				{
					NChartOHLCSeries series = new NChartOHLCSeries ();
					series.DataSource = this;
					series.Tag = 0;
					series.PositiveColor = UIColor.FromRGB (73, 226, 141);
					series.NegativeColor = UIColor.FromRGB (221, 73, 73);
					series.BorderThickness = 1.0f;
					m_view.Chart.AddSeries (series);

					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Band:
				{
					NChartBandSeries series = new NChartBandSeries ();
					series.DataSource = this;
					series.Tag = 0;
					series.PositiveColor = UIColor.FromRGBA (112, 170, 242, 204);
					series.NegativeColor = UIColor.FromRGBA (196, 240, 91, 204);
					series.HighBorderColor = UIColor.FromRGB (130, 196, 255);
					series.LowBorderColor = UIColor.FromRGB (226, 255, 112);
					series.BorderThickness = 5.0f;
					m_view.Chart.AddSeries (series);

					m_view.Chart.CartesianSystem.XAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Sequence:
				{
					for (int i = 0; i < 3; ++i) {
						NChartSequenceSeries series = new NChartSequenceSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						m_view.Chart.AddSeries (series);
					}

					m_view.Chart.CartesianSystem.XAxis.HasOffset = false;
					m_view.Chart.CartesianSystem.YAxis.HasOffset = true;
					m_view.Chart.CartesianSystem.ZAxis.HasOffset = false;
				}
				break;

			case SeriesType.Radar:
				{
					for (int i = 0; i < 3; ++i) {
						NChartRadarSeries series = new NChartRadarSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						series.Brush.Opacity = 0.8f;
						m_view.Chart.AddSeries (series);
					}
				}
				break;

			case SeriesType.Funnel2D:
			case SeriesType.Funnel3D:
				for (int i = 0; i < 3; ++i) {
					NChartFunnelSeries series = new NChartFunnelSeries ();
					series.DataSource = this;
					series.Tag = i;
					series.BottomRadius = (float)(i + 1) / 5.0f;
					series.TopRadius = (float)(i + 2) / 5.0f;
					NChartBrush brush = brushes [i];
					brush.Opacity = 0.8f;
					series.Brush = brush;
					m_view.Chart.AddSeries (series);
				}
				m_view.Chart.CartesianSystem.Visible = false;
				break;

			case SeriesType.Heatmap:
				{
					NChartHeatmapSeries series = new NChartHeatmapSeries ();
					series.DataSource = this;
					series.Tag = 0;

					// Create brush scale.
					// See NChartBrushScale for details.
					series.Scale = NChartBrushScale.BrushScaleWithBrushes (brushes, new NSNumber[] {
						NSNumber.FromDouble (-0.3),
						NSNumber.FromDouble (0.3)
					});

					m_view.Chart.AddSeries (series);
					m_view.Chart.CartesianSystem.XAxis.ShouldBeautifyMinAndMax = false;
					m_view.Chart.CartesianSystem.YAxis.ShouldBeautifyMinAndMax = false;
				}
				break;
			}
		}
Exemplo n.º 5
0
		void CreateSeries ()
		{
			// Create series.
			switch (type) {
			case SeriesType.Column2D:
			case SeriesType.Column3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartColumnSeries series = new NChartColumnSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					NChartColumnSeries.Settings settings = new NChartColumnSeries.Settings ();
					settings.CylindersResolution = 4;
					settings.ShouldSmoothCylinders = false;
					mNChartView.Chart.AddSeriesSettings (settings);
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.ColumnCylinder:
				{
					for (int i = 0; i < 3; ++i) {
						NChartColumnSeries series = new NChartColumnSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					NChartColumnSeries.Settings settings = new NChartColumnSeries.Settings ();
					settings.CylindersResolution = 20;
					settings.ShouldSmoothCylinders = false;
					mNChartView.Chart.AddSeriesSettings (settings);
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Bar2D:
			case SeriesType.Bar3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartBarSeries series = new NChartBarSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					NChartBarSeries.Settings settings = new NChartBarSeries.Settings ();
					settings.CylindersResolution = 4;
					settings.ShouldSmoothCylinders = false;
					mNChartView.Chart.AddSeriesSettings (settings);
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.BarCylinder:
				{
					for (int i = 0; i < 3; ++i) {
						NChartBarSeries series = new NChartBarSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					NChartBarSeries.Settings settings = new NChartBarSeries.Settings ();
					settings.CylindersResolution = 20;
					settings.ShouldSmoothCylinders = false;
					mNChartView.Chart.AddSeriesSettings (settings);
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Area2D:
			case SeriesType.Area3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartAreaSeries series = new NChartAreaSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Line2D:
			case SeriesType.Line3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartLineSeries series = new NChartLineSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						series.LineThickness = 3.0f;
						mNChartView.Chart.AddSeries (series);
					}
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Step2D:
			case SeriesType.Step3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartStepSeries series = new NChartStepSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						series.LineThickness = 3.0f;
						mNChartView.Chart.AddSeries (series);
					}
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Ribbon:
				{
					for (int i = 0; i < 3; ++i) {
						NChartRibbonSeries series = new NChartRibbonSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Pie2D:
			case SeriesType.Pie3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartPieSeries series = new NChartPieSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					NChartPieSeries.Settings settings = new NChartPieSeries.Settings ();
					settings.HoleRatio = 0.0f;
					mNChartView.Chart.AddSeriesSettings (settings);
				}
				break;

			case SeriesType.Doughnut2D:
			case SeriesType.Doughnut3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartPieSeries series = new NChartPieSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i];
						mNChartView.Chart.AddSeries (series);
					}
					NChartPieSeries.Settings settings = new NChartPieSeries.Settings ();
					settings.HoleRatio = 0.1f;
					mNChartView.Chart.AddSeriesSettings (settings);
				}
				break;

			case SeriesType.Bubble2D:
			case SeriesType.Bubble3D:
			case SeriesType.Scatter2D:
			case SeriesType.Scatter3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartBubbleSeries series = new NChartBubbleSeries ();
						series.DataSource = this;
						series.Tag = i;
						mNChartView.Chart.AddSeries (series);
					}
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = false;
				}
				break;

			case SeriesType.Surface:
				{
					NChartSurfaceSeries series = new NChartSurfaceSeries ();
					series.DataSource = this;
					series.Tag = 0;
					mNChartView.Chart.AddSeries (series);

					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = false;
				}
				break;

			case SeriesType.Candlestick2D:
			case SeriesType.Candlestick3D:
				{
					NChartCandlestickSeries series = new NChartCandlestickSeries ();
					series.DataSource = this;
					series.Tag = 0;
					series.PositiveColor = Color.Argb (255, (int)(255 * 0.28), (int)(255 * 0.88), (int)(255 * 0.55));
					series.PositiveBorderColor = Color.Argb (255, (int)(255 * 0.25), (int)(255 * 0.8), (int)(255 * 0.15));
					series.NegativeColor = Color.Argb (255, (int)(255 * 0.87), (int)(255 * 0.28), (int)(255 * 0.28));
					series.NegativeBorderColor = Color.Argb (255, (int)(255 * 0.78), (int)(255 * 0.1), (int)(255 * 0.2));
					series.BorderThickness = 3.0f;
					mNChartView.Chart.AddSeries (series);

					NChartCandlestickSeries.Settings settings = new NChartCandlestickSeries.Settings ();
					settings.CylindersResolution = 20;
					mNChartView.Chart.AddSeriesSettings (settings);
					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.OHLC2D:
			case SeriesType.OHLC3D:
				{
					NChartOHLCSeries series = new NChartOHLCSeries ();
					series.DataSource = this;
					series.Tag = 0;
					series.PositiveColor = Color.Argb (255, (int)(255 * 0.28), (int)(255 * 0.88), (int)(255 * 0.55));
					series.NegativeColor = Color.Argb (255, (int)(255 * 0.87), (int)(255 * 0.28), (int)(255 * 0.28));
					series.BorderThickness = 3.0f;
					mNChartView.Chart.AddSeries (series);

					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Band:
				{
					NChartBandSeries series = new NChartBandSeries ();
					series.DataSource = this;
					series.Tag = 0;
					series.PositiveColor = Color.Argb ((int)(255 * 0.8), (int)(255 * 0.41), (int)(255 * 0.67), (int)(255 * 0.95));
					series.NegativeColor = Color.Argb ((int)(255 * 0.8), (int)(255 * 0.77), (int)(255 * 0.94), (int)(255 * 0.36));
					series.HighBorderColor = Color.Argb ((int)(255 * 0.8), (int)(255 * 0.51), (int)(255 * 0.78), (int)(255 * 1.0));
					series.LowBorderColor = Color.Argb ((int)(255 * 0.8), (int)(255 * 0.89), (int)(255 * 1.0), (int)(255 * 0.44));

					series.BorderThickness = 5.0f;
					mNChartView.Chart.AddSeries (series);

					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = true;
				}
				break;

			case SeriesType.Sequence:
				{
					for (int i = 0, m = 3; i < m; ++i) {
						NChartSequenceSeries series = new NChartSequenceSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.Brush = brushes [i % brushes.Length];
						mNChartView.Chart.AddSeries (series);
					}

					mNChartView.Chart.CartesianSystem.XAxis.HasOffset = false;
					mNChartView.Chart.CartesianSystem.YAxis.HasOffset = true;
					mNChartView.Chart.CartesianSystem.ZAxis.HasOffset = false;
				}
				break;

			case SeriesType.Radar:
				{
					for (int i = 0; i < 3; ++i) {
						NChartRadarSeries series = new NChartRadarSeries ();
						series.DataSource = this;
						series.Tag = i;
						NChartBrush brush = brushes [i % brushes.Length]; // todo: copy method here
						brush.Opacity = 0.8;
						series.Brush = brush;
						mNChartView.Chart.AddSeries (series);
					}
				}
				break;

			case SeriesType.Funnel2D:
			case SeriesType.Funnel3D:
				{
					for (int i = 0; i < 3; ++i) {
						NChartFunnelSeries series = new NChartFunnelSeries ();
						series.DataSource = this;
						series.Tag = i;
						series.BottomRadius = (float)(i + 1) / 5.0f;
						series.TopRadius = (float)(i + 2) / 5.0f;
						NChartBrush brush = brushes [i % brushes.Length];
						brush.Opacity = 0.8f;
						series.Brush = brush;
						mNChartView.Chart.AddSeries (series);
					}
				}
				break;

			case SeriesType.Heatmap:
				{
					NChartHeatmapSeries series = new NChartHeatmapSeries ();
					series.DataSource = this;
					series.Tag = 0;

					// Create brush scale.
					// See NChartBrushScale for details.
					series.Scale = new NChartBrushScale (brushes, new Number[] { (Number)(-0.3), (Number)(0.3) });

					mNChartView.Chart.AddSeries (series);
					mNChartView.Chart.CartesianSystem.XAxis.ShouldBeautifyMinAndMax = false;
					mNChartView.Chart.CartesianSystem.YAxis.ShouldBeautifyMinAndMax = false;
				}
				break;
			}
		}