Exemplo n.º 1
0
        /// <summary>
        /// IndependentAxisProperty property changed handler.
        /// </summary>
        /// <param name="d">BubbleSeries that changed its IndependentAxis.</param>
        /// <param name="e">Event arguments.</param>
        private static void OnIndependentAxisPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            BubbleSeries source   = (BubbleSeries)d;
            IAxis        newValue = (IAxis)e.NewValue;

            source.OnIndependentAxisPropertyChanged(newValue);
        }
Exemplo n.º 2
0
        bool ProcessSeriesData(ref List<object> listOfSeries, string chartType, string seriesDataString, ref string failOverMessage)
        {
            bool parsed = false;
            bool isSingleSeries = false;

            List<ColumnSeries> columnSeriesList = new List<ColumnSeries>();

            string[] seriesDataStringArray = seriesDataString.Split(new string[] { Statics.SeparateLineSeries }, StringSplitOptions.RemoveEmptyEntries);

            if (seriesDataStringArray.Length < 1)
            {
                isSingleSeries = true;
            }

            foreach (string lineSeriesItemString in seriesDataStringArray)
            {
                object series;
                switch (chartType.ToUpper().Replace(" ",""))
                {
                    case Statics.Area:
                        series = new AreaSeries();
                        ((AreaSeries)series).IndependentValuePath = "Key";
                        ((AreaSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Bar:
                        series = new ColumnSeries();
                        ((ColumnSeries)series).IndependentValuePath = "Key";
                        ((ColumnSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Bubble:
                        series = new BubbleSeries();
                        ((BubbleSeries)series).IndependentValuePath = "Key";
                        ((BubbleSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.RotatedBar:
                        series = new BarSeries();
                        ((BarSeries)series).IndependentValuePath = "Key";
                        ((BarSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Histogram:
                        series = new ColumnSeries();
                        ((ColumnSeries)series).IndependentValuePath = "Key";
                        ((ColumnSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Line:
                        series = new LineSeries();
                        ((LineSeries)series).IndependentValuePath = "Key";
                        ((LineSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Pie:
                        series = new PieSeries();
                        ((PieSeries)series).IndependentValuePath = "Key";
                        ((PieSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Scatter:
                        series = new ScatterSeries();
                        ((ScatterSeries)series).IndependentValuePath = "Key";
                        ((ScatterSeries)series).DependentValuePath = "Value";
                        break;

                    case Statics.Stacked:
                        //series = new StackedBarSeries();
                        //((StackedBarSeries)series).IndependentValuePath = "Key";
                        //((StackedBarSeries)series).DependentValuePath = "Value";

                    case Statics.TreeMap:
                    default:
                        failOverMessage = "The specified graph type supplied in the input parameters (initParams) could not be parsed.";
                        return false;
                }

                string[] titleSplit = lineSeriesItemString.Split(new string[] { Statics.LineSeriesTitle }, StringSplitOptions.None);

                if (titleSplit.Length == 3)
                {
                    switch (chartType.ToUpper().Replace(" ", ""))
                    {
                        case Statics.Area:
                            ((AreaSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Bar:
                            ((ColumnSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Bubble:
                            ((BubbleSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.RotatedBar:
                            ((BarSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Histogram:
                            ((ColumnSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Line:
                            ((LineSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Pie:
                            ((PieSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Scatter:
                            ((ScatterSeries)series).Title = titleSplit[1];
                            break;

                        case Statics.Stacked:
                        case Statics.TreeMap:
                        default:
                            break;
                    }
                }

                Dictionary<object, object> pointList = new Dictionary<object, object>();

                string[] dataSplit = lineSeriesItemString.Split(new string[] { Statics.LineSeriesDataString }, StringSplitOptions.None);

                object independentValue = string.Empty;
                object dependentValue = 0.0;

                if (dataSplit.Length == 3)
                {
                    string dataString = dataSplit[1];

                    string[] dataPairStringArray = dataString.Split(new string[] { Statics.SeparateDataPoints }, StringSplitOptions.None);

                    foreach (string pair in dataPairStringArray)
                    {
                        if (pair.Length > 0)
                        {
                            string[] set = pair.Split(new string[] { Statics.SeparateIndDepValues }, StringSplitOptions.None);

                            try
                            {
                                if (set.Length == 2)
                                {
                                    Double doubleCandidate;
                                    DateTime dateTimeCandidate;

                                    // < independent >
                                    if (Double.TryParse(set[0], out doubleCandidate))
                                    {
                                        independentValue = doubleCandidate;

                                        if (_minIndependentValueIsValid)
                                        {
                                            if ((double)independentValue < (double)_minIndependentValue)
                                            {
                                                _minIndependentValue = independentValue;
                                            }
                                        }
                                        else
                                        {
                                            _minIndependentValue = independentValue;
                                            _minIndependentValueIsValid = true;
                                        }

                                        if (_maxIndependentValueIsValid)
                                        {
                                            if ((double)independentValue > (double)_maxIndependentValue)
                                            {
                                                _maxIndependentValue = independentValue;
                                            }
                                        }
                                        else
                                        {
                                            _maxIndependentValue = independentValue;
                                            _maxIndependentValueIsValid = true;
                                        }
                                    }
                                    else if (DateTime.TryParse(set[0], out dateTimeCandidate))
                                    {
                                        independentValue = dateTimeCandidate;

                                        if (_minIndependentValueIsValid)
                                        {
                                            if ((DateTime)independentValue < (DateTime)_minIndependentValue)
                                            {
                                                _minIndependentValue = independentValue;
                                            }
                                        }
                                        else
                                        {
                                            _minIndependentValue = independentValue;
                                            _minIndependentValueIsValid = true;
                                        }

                                        if (_maxIndependentValueIsValid)
                                        {
                                            if ((DateTime)independentValue > (DateTime)_maxIndependentValue)
                                            {
                                                _maxIndependentValue = independentValue;
                                            }
                                        }
                                        else
                                        {
                                            _maxIndependentValue = independentValue;
                                            _maxIndependentValueIsValid = true;
                                        }
                                    }
                                    else
                                    {
                                        independentValue = set[0].ToString();
                                    }

                                    // < dependent >
                                    if (Double.TryParse(set[1], out doubleCandidate))
                                    {
                                        dependentValue = doubleCandidate;
                                    }
                                    else if (DateTime.TryParse(set[1], out dateTimeCandidate))
                                    {
                                        dependentValue = dateTimeCandidate;
                                    }
                                    else
                                    {
                                        dependentValue = set[1].ToString();
                                    }

                                    pointList.Add(independentValue, dependentValue);
                                }
                            }
                            catch
                            {
                                return false;
                            }
                        }
                    }
                }
                else
                {
                    failOverMessage = string.Format("Parse fail with '{0}'", lineSeriesItemString);
                    return false;
                }

                AddItemSourceToSeries(chartType, series, pointList);

                if (isSingleSeries)
                {
                    AddAxesToSeries(chartType, series, independentValue);
                }
                else
                {
                    //((ColumnSeries)series).IndependentAxis = new LinearAxis
                    //{
                    //    Title = _independentLabel,
                    //    Orientation = AxisOrientation.X,
                    //    Minimum = (double)_minIndependentValue,
                    //    Maximum = (double)_maxIndependentValue
                    //};
                }

                listOfSeries.Add(series);
                parsed = true;
            }
            return parsed;
        }
Exemplo n.º 3
0
        void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
        {
            switch (connectionId)
            {
            case 1:
                this.btnDaily = ((System.Windows.Controls.Button)(target));

            #line 20 "..\..\DashBoard.xaml"
                this.btnDaily.Click += new System.Windows.RoutedEventHandler(this.btnDaily_Click);

            #line default
            #line hidden
                return;

            case 2:
                this.btnWeek = ((System.Windows.Controls.Button)(target));

            #line 21 "..\..\DashBoard.xaml"
                this.btnWeek.Click += new System.Windows.RoutedEventHandler(this.btnWeek_Click);

            #line default
            #line hidden
                return;

            case 3:
                this.btnMonth = ((System.Windows.Controls.Button)(target));

            #line 22 "..\..\DashBoard.xaml"
                this.btnMonth.Click += new System.Windows.RoutedEventHandler(this.btnMonth_Click);

            #line default
            #line hidden
                return;

            case 4:
                this.btnAll = ((System.Windows.Controls.Button)(target));

            #line 23 "..\..\DashBoard.xaml"
                this.btnAll.Click += new System.Windows.RoutedEventHandler(this.btnAll_Click);

            #line default
            #line hidden
                return;

            case 5:
                this.mainGrid = ((System.Windows.Controls.Grid)(target));
                return;

            case 6:

            #line 49 "..\..\DashBoard.xaml"
                ((System.Windows.Controls.Label)(target)).PreviewMouseLeftButtonUp += new System.Windows.Input.MouseButtonEventHandler(this.Button_Click);

            #line default
            #line hidden
                return;

            case 7:
                this.columnChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target));
                return;

            case 8:

            #line 68 "..\..\DashBoard.xaml"
                ((System.Windows.Controls.Label)(target)).PreviewMouseLeftButtonUp += new System.Windows.Input.MouseButtonEventHandler(this.Button_Click);

            #line default
            #line hidden
                return;

            case 9:
                this.pieChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target));
                return;

            case 10:
                this.barchart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target));
                return;

            case 11:
                this.linechart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target));
                return;

            case 12:
                this.lineseries1 = ((System.Windows.Controls.DataVisualization.Charting.BubbleSeries)(target));
                return;

            case 13:
                this.lineseries2 = ((System.Windows.Controls.DataVisualization.Charting.BubbleSeries)(target));
                return;

            case 14:
                this.lineseries3 = ((System.Windows.Controls.DataVisualization.Charting.BubbleSeries)(target));
                return;
            }
            this._contentLoaded = true;
        }