Beispiel #1
0
        protected override void DrawChartWithSeriesInfo()
        {
            SeriesInfo   si        = null;
            ChartUtility chartUtil = new ChartUtility();
            int          iCount    = (int)ChartUtility.CHAERT_SERIES_COLOR.COUNT;

            for (int i = 0; i < this.dtDataSource.Columns.Count; i++)
            {
                string seriesName = this.dtDataSource.Columns[i].ColumnName;

                if (seriesName == CommonChart.COLUMN_NAME_SEQ_INDEX || seriesName == Definition.CHART_COLUMN.TIME || seriesName == Definition.CHART_COLUMN.TIME2 ||
                    seriesName == Definition.COL_TOGGLE || seriesName == Definition.COL_TOGGLE_YN || seriesName == Definition.CHART_COLUMN.DTSOURCEID ||
                    lstRawColumn.Contains(seriesName))
                {
                    continue;
                }
                si = new SeriesInfo(typeof(Line), seriesName, this.dtDataSource, CommonChart.COLUMN_NAME_SEQ_INDEX, seriesName);


                switch (seriesName)
                {
                case Definition.CHART_COLUMN.UCL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.UCL); break;

                case Definition.CHART_COLUMN.LCL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.LCL); break;

                case Definition.CHART_COLUMN.LSL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.LSL); break;

                case Definition.CHART_COLUMN.USL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.USL); break;

                case Definition.CHART_COLUMN.MIN: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.MIN); break;

                case Definition.CHART_COLUMN.MAX: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.MAX); break;

                case Definition.CHART_COLUMN.TARGET: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.TARGET); break;

                default:
                    if ((seriesName == Definition.CHART_COLUMN.RAW) ||
                        (seriesName == Definition.CHART_COLUMN.STDDEV) ||
                        (seriesName == Definition.CHART_COLUMN.AVG) ||
                        (seriesName == Definition.CHART_COLUMN.RANGE) ||
                        (seriesName == Definition.CHART_COLUMN.MA) ||
                        (seriesName == Definition.CHART_COLUMN.MSD) ||
                        (seriesName == Definition.CHART_COLUMN.MR) ||
                        (seriesName == Definition.CHART_COLUMN.MEAN) ||
                        (seriesName == Definition.CHART_COLUMN.EWMAMEAN) ||
                        (seriesName == Definition.CHART_COLUMN.EWMARANGE) ||
                        (seriesName == Definition.CHART_COLUMN.EWMASTDDEV))
                    {
                        si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.AVG);
                    }
                    else
                    {
                        si.SeriesColor = chartUtil.GetSeriesColor(iCount++);
                    }

                    break;
                }
                this.DrawChart(si);
            }
        }
        public void TestRealLife_Chart22()
        {
            const string fileName = @"d:\temp\ScottPlott_Chart22.png";

            if (File.Exists(fileName))
            {
                File.Delete(fileName);
            }

            var data = new ChartData
            {
                Title      = "Test portfolio",
                Copyright  = "Testfirma",
                XLabelText = "Anlageklassen",
                YLabelText = "Anteil in %",
                FileName   = fileName,
                ChartType  = ChartType.LineChart,
                //PaperColor = Color.Red
            };

            TestHelper.LoadDefaultChartStyle(data, HighResolution);

            var dt = TestHelper.GetDataTable("chart22.xml");

            ChartUtility.DataTableToChartItemData(dt, "1;5;6;7", data);

            var x = new ChartHandler
            {
                ChartData = data
            };

            x.Export();

            TestHelper.StartFile(fileName);
        }
Beispiel #3
0
 public void InitializeVariable()
 {
     this._Initialization = new Initialization();
     this._Initialization.InitializePath();
     this._mlthandler = MultiLanguageHandler.getInstance();
     this.chartUtil   = new ChartUtility();
 }
Beispiel #4
0
 public void InitializeVariable()
 {
     this._Initialization = new Initialization();
     this._mlthandler     = MultiLanguageHandler.getInstance();
     this._Initialization.InitializePath();
     this._lstRawColumn = new List <string>();
     this._chartUtil    = new ChartUtility();
 }
Beispiel #5
0
 public void InitializeVariable()
 {
     this._Initialization = new Initialization();
     this._Initialization.InitializePath();
     this._mlthandler = MultiLanguageHandler.getInstance();
     this._chartUtil  = new ChartUtility();
     this.AnalysisChart.ClearChart();
     this.InitSeriesColor();
 }
Beispiel #6
0
 public void InitializeVariable()
 {
     this._Initialization = new Initialization();
     this._mlthandler     = MultiLanguageHandler.getInstance();
     this._Initialization.InitializePath();
     this._lstRawColumn = new List <string>();
     this._chartUtil    = new ChartUtility();
     this._wsSPC        = new WebServiceController <eSPCWebService.eSPCWebService>().Create();
 }
Beispiel #7
0
        protected override void DrawChartWithSeriesInfoForSumChart()
        {
            SeriesInfo   si        = null;
            ChartUtility chartUtil = new ChartUtility();
            int          iCount    = (int)ChartUtility.CHAERT_SERIES_COLOR.COUNT;

            for (int i = 0; i < this.dtDataSource.Columns.Count; i++)
            {
                string seriesName = this.dtDataSource.Columns[i].ColumnName;

                if (seriesName == CommonChart.COLUMN_NAME_SEQ_INDEX ||
                    seriesName == Definition.CHART_COLUMN.TIME ||
                    seriesName == Definition.CHART_COLUMN.TIME2 ||
                    seriesName == Definition.CHART_COLUMN.DTSOURCEID ||
                    seriesName == Definition.COL_TOGGLE_YN ||
                    lstRawColumn.Contains(seriesName))
                {
                    continue;
                }

                si            = new SeriesInfo(typeof(ExtremeBFastLine), seriesName, this.dtDataSource, CommonChart.COLUMN_NAME_SEQ_INDEX, seriesName);
                si.TreatNulls = TreatNullsStyle.DoNotPaint;

                switch (seriesName)
                {
                case Definition.CHART_COLUMN.UCL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.UCL); break;

                case Definition.CHART_COLUMN.LCL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.LCL); break;

                case Definition.CHART_COLUMN.LSL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.LSL); break;

                case Definition.CHART_COLUMN.USL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.USL); break;

                case Definition.CHART_COLUMN.TARGET: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.TARGET); break;

                default:
                    if ((seriesName == Definition.CHART_COLUMN.P) ||
                        (seriesName == Definition.CHART_COLUMN.PN) ||
                        (seriesName == Definition.CHART_COLUMN.C) ||
                        (seriesName == Definition.CHART_COLUMN.U))
                    {
                        si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.AVG);
                    }
                    else
                    {
                        si.SeriesColor = chartUtil.GetSeriesColor(iCount++);
                    }

                    break;
                }
                this.DrawChart(si);
            }
        }
Beispiel #8
0
        /// <summary>
        /// Get data for a sample point chart
        /// </summary>
        /// <param name="useDatabase"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        internal static void PointChartSample(bool useDatabase, ChartData data)
        {
            var erg = data.DataSource;

            if (useDatabase)
            {
                var dt = TestHelper.GetDataTable("PointChart.xml");
                ChartUtility.DataTableToPointChartItemData(dt, "", data);
            }
            else
            {
                // shares
                var item = new PointChartItemData
                {
                    XValue = 10,
                    YValue = 8,
                    Label  = "Aktien",
                    Color  = Color.Red
                };

                erg.Add(item);

                // fixed income
                item = new PointChartItemData
                {
                    XValue = 5,
                    YValue = 4,
                    Label  = "Anleihen",
                    Color  = Color.Gray
                };

                erg.Add(item);

                // liquidity
                item = new PointChartItemData
                {
                    XValue = 2,
                    YValue = 1,
                    Label  = "Liquidität",
                    Color  = Color.LightGray
                };



                erg.Add(item);

                data.PropertiesToUseForChart.Add("Risk");
                data.PropertiesToUseForChart.Add("Return");
            }
        }
    private IEnumerator ShowResult()
    {
        StaticValue.trackCount++;

        yield return(Find.GetSceneLoadManager().LoadResultScene());

        yield return(null);

        resultController = GameObject.FindWithTag("ResultController").GetComponent <ResultController>();

        ResultData resultData = new ResultData();

        ClearType  clearType  = JudgeClearType();
        Difficulty selectDif  = StaticValue.difficulty;
        string     musicTitle = musicStruct.musicName;
        int        score      = uiCountroller.targetScore;
        int        bestScore  = ChartUtility.GetBestScore(StaticValue.loadName, selectDif);

        resultData.musicTitle = musicTitle;
        resultData.clearType  = clearType;
        resultData.composer   = musicStruct.composer;
        resultData.difficulty = selectDif;
        resultData.score      = uiCountroller.targetScore;
        resultData.bestScore  = bestScore;
        resultData.judgeCount = uiData.judgeCount;
        resultData.level      = GetPlayingChart().level;
        resultData.maxCombo   = uiData.maxConbo;
        resultData.fastCount  = inputController.fastCount;
        resultData.lateCount  = inputController.lateCount;

        resultController.SetUIValue(resultData);
        yield return(new WaitForSeconds(0.5f));

        resultController.PlayResultAnim(true);

        float loadTime = 2.5f;

        if (!StaticValue.isAuto)
        {
            float nowTime = Time.realtimeSinceStartup;
            yield return(StartCoroutine(ChartUtility.WriteScoreDataFromResult(StaticValue.loadName, score, selectDif, clearType)));

            loadTime = Mathf.Clamp(loadTime - Time.realtimeSinceStartup - nowTime, 0, 2.5f);
        }

        yield return(new WaitForSeconds(loadTime));

        isResult = true;
    }
        public void TestRealLife_Chart3()
        {
            const string fileName = @"d:\temp\ScottPlott_Chart3.png";

            if (File.Exists(fileName))
            {
                File.Delete(fileName);
            }

            var data = new ChartData
            {
                Title      = "Test portfolio",
                Copyright  = "Testfirma",
                XLabelText = "Anlageklassen",
                YLabelText = "Anteil in %",
                FileName   = fileName,
                ChartType  = ChartType.LineChart,
                //PaperColor = Color.Red
            };

            TestHelper.LoadDefaultChartStyle(data, HighResolution);

            var dt = TestHelper.GetDataTable("chart3.xml");

            ChartUtility.DataTableToChartItemData(dt, "", data);

            data.ChartStyle.XAxisNumberformat = "dd.MM.yyyy";

            data.PropertiesToUseForChart.Add("XValue");
            data.PropertiesToUseForChart.Add("YValue1");
            data.PropertiesToUseForChart.Add("YValue2");
            data.PropertiesToUseForChart.Add("YValue3");

            data.LabelsForSeries.Add("Aktien");
            data.LabelsForSeries.Add("Renten");
            data.LabelsForSeries.Add("Liquidität");

            var x = new ChartHandler
            {
                ChartData = data
            };

            x.Export();

            TestHelper.StartFile(fileName);
        }
    public IEnumerator StartInit()
    {
        Application.targetFrameRate = 60;
        loadName = StaticValue.loadName;

        if (Constant.CompareEnv(GameEnvironment.local))
        {
            musicStruct = ChartUtility.LoadMusicData(loadName);
        }
        else if (Constant.CompareEnv(GameEnvironment.webGL))
        {
            CacheStruct cacheStruct = ChartUtility.FindCacheStruct(loadName);
            musicStruct = cacheStruct.musicStruct;
            scoreData   = cacheStruct.scoreStruct;
        }

        yield return(StartCoroutine(GameInit()));
    }
        public void TestScalinglineChartsMechanism1()
        {
            //Arrange
            var max = 1.47;
            var min = 0.76;

            // Act
            var interval = ChartUtility.GetMinMaxForLineChart(ref min, ref max);

            //Assert
            Debug.Print("{0:#,##0.000000}", min);
            Debug.Print("{0:#,##0.000000}", max);
            Debug.Print("{0:#,##0.000000}", interval);

            Assert.IsTrue(max - 1.5 < Tolerance);
            Assert.IsTrue(min - 0.7 < Tolerance);
            Assert.IsTrue(Math.Abs(interval - 0.1) < Tolerance);
        }
        public void TestScalinglineChartsMechanism1_SmallValues()
        {
            //Arrange
            var max = 0.00004556;
            var min = 0.000003;

            // Act
            var interval = ChartUtility.GetMinMaxForLineChart(ref min, ref max);

            //Assert
            Debug.Print("{0:#,##0.000000}", min);
            Debug.Print("{0:#,##0.000000}", max);
            Debug.Print("{0:#,##0.000000}", interval);


            Assert.IsTrue(max > 0 && max - 0.00005 < Tolerance);
            Assert.IsTrue(min - 0.00000 < Tolerance);
            Assert.IsTrue(Math.Abs(interval - 0.00001) < Tolerance);
        }
        public void TestScalinglineChartsMechanism1_BigValues()
        {
            //Arrange
            var max = 196.46;
            var min = 101.96;

            // Act
            var interval = ChartUtility.GetMinMaxForLineChart(ref min, ref max);

            //Assert
            Debug.Print("{0:#,##0.000000}", min);
            Debug.Print("{0:#,##0.000000}", max);
            Debug.Print("{0:#,##0.000000}", interval);


            Assert.IsTrue(max > 0 && max - 200 < Tolerance);
            Assert.IsTrue(min > -0.00000001 && min - 100.0 < Tolerance);
            Assert.IsTrue(Math.Abs(interval - 10) < Tolerance);
        }
Beispiel #15
0
        /// <summary>
        /// Get data for a sample pie chart
        /// </summary>
        /// <returns></returns>
        public static void PieChartSample(bool useDatabase, ChartData data)
        {
            var erg = data.DataSource;


            if (useDatabase)
            {
                var dt = TestHelper.GetDataTable("PieChart.xml");
                ChartUtility.DataTableToPieChartItemData(dt, "1;2", data);
            }
            else
            {
                // shares
                var item = new PieChartItemData
                {
                    XValue = "Aktien",
                    YValue = 0.5
                };

                erg.Add(item);

                // fixed income
                item = new PieChartItemData
                {
                    XValue = "Anleihen",
                    YValue = 0.4
                };

                erg.Add(item);

                // liquidity
                item = new PieChartItemData
                {
                    XValue = "Liquidität",
                    YValue = 0.1
                };

                erg.Add(item);

                data.PropertiesToUseForChart.Add("XValue");
                data.PropertiesToUseForChart.Add("YValue");
            }
        }
        public void TestStackedColumn100Chart()
        {
            // const string sql = "EXEC Vermoegen_Db.[dbo].SetFinDBUser 'bodoprivate' exec Vermoegen_Db.[dbo].[GetAnteilswerte] 120, 1";

            const string fileName = @"d:\temp\ScottPlott_Db_StackedColumn100Chart.png";

            if (File.Exists(fileName))
            {
                File.Delete(fileName);
            }

            var data = new ChartData
            {
                Title      = "Test portfolio",
                Copyright  = "Testfirma",
                XLabelText = "Anlageklassen",
                YLabelText = "Anteilswert",
                FileName   = fileName,
                ChartType  = ChartType.StackedColumn100Chart,
            };

            TestHelper.LoadDefaultChartStyle(data);

            var dt = TestHelper.GetDataTable("StackedColumnChart.xml");

            ChartUtility.DataTableToChartItemData(dt, "", data);

            var x = new ChartHandler
            {
                ChartData = data
            };

            x.Export();

            TestHelper.StartFile(fileName);
        }
Beispiel #17
0
        protected override void DrawChartWithRawSeriesInfo()
        {
            SeriesInfo   si        = null;
            ChartUtility chartUtil = new ChartUtility();
            DataTable    dtTemp    = new DataTable();
            ArrayList    arrTemp   = new ArrayList();
            Type         tempType  = null;
            LinkedList   lnkList   = new LinkedList();

            for (int i = 0; i < this.dtDataSource.Columns.Count; i++)
            {
                string seriesName     = this.dtDataSource.Columns[i].ColumnName;
                string seriesNameTemp = this.dtDataSource.Columns[i].ColumnName.Split('^')[0];

                if (seriesName == CommonChart.COLUMN_NAME_SEQ_INDEX)
                {
                    tempType = this.dtDataSource.Rows[0][i].GetType();
                }
                else if (lstRawColumn.Contains(seriesName))
                {
                    if (dtTemp.Columns.Contains(seriesNameTemp))
                    {
                        continue;
                    }
                    else if (!lnkList.Contains(seriesNameTemp))
                    {
                        dtTemp = new DataTable();
                        dtTemp.Columns.Add(CommonChart.COLUMN_NAME_SEQ_INDEX, tempType);
                        for (int k = 0; k < this.dtDataSource.Rows.Count; k++)
                        {
                            if (this.dtDataSource.Rows[k][i] != null && this.dtDataSource.Rows[k][i].ToString().Length > 0)
                            {
                                dtTemp.Columns.Add(seriesNameTemp, this.dtDataSource.Rows[k][i].GetType());
                                break;
                            }
                        }
                        lnkList.Add(seriesNameTemp, dtTemp.Clone());
                        arrTemp.Add(seriesNameTemp);
                    }
                }
            }

            if (lnkList.Count > 0)
            {
                for (int i = 0; i < arrTemp.Count; i++)
                {
                    DataRow   dr = null;
                    DataTable dt = new DataTable();
                    dt = ((DataTable)lnkList[arrTemp[i].ToString()]).Clone();
                    string sTempColumnName = dt.Columns[1].ColumnName;

                    for (int j = 0; j < this.dtDataSource.Rows.Count; j++)
                    {
                        for (int k = 0; k < this.dtDataSource.Columns.Count; k++)
                        {
                            if (this.dtDataSource.Columns[k].ColumnName.Split('^')[0] == sTempColumnName)
                            {
                                if (this.dtDataSource.Rows[j][k] != null && this.dtDataSource.Rows[j][k].ToString().Length > 0)
                                {
                                    dr    = dt.NewRow();
                                    dr[0] = dtDataSource.Rows[j][CommonChart.COLUMN_NAME_SEQ_INDEX];;
                                    dr[1] = dtDataSource.Rows[j][k];
                                    dt.Rows.Add(dr);
                                }
                            }
                        }
                    }
                    lnkList.Remove(arrTemp[i].ToString());
                    lnkList.Add(arrTemp[i].ToString(), dt);
                }

                for (int i = 0; i < arrTemp.Count; i++)
                {
                    si             = new SeriesInfo(typeof(Line), arrTemp[i].ToString(), ((DataTable)lnkList[arrTemp[i].ToString()]), CommonChart.COLUMN_NAME_SEQ_INDEX, arrTemp[i].ToString());
                    si.SeriesColor = chartUtil.GetSeriesColor(i);
                    this.DrawChart(si);
                }
            }
        }
Beispiel #18
0
        public static void ChartSample(bool useDatabase, ChartData data)
        {
            var erg = data.DataSource;


            if (useDatabase)
            {
                var dt = TestHelper.GetDataTable("LineChart.xml");
                ChartUtility.DataTableToChartItemData(dt, "", data);
            }
            else
            {
                var date = DateTime.Now;

                //
                var item = new ChartItemData
                {
                    XValue  = date.AddMonths(-2).ToOADate(),
                    YValue1 = 276137,
                    YValue2 = 71735,
                    YValue3 = 69805,
                    IsDate  = true,
                };

                erg.Add(item);

                //
                item = new ChartItemData
                {
                    XValue  = date.AddMonths(-1).ToOADate(),
                    YValue1 = 76137,
                    YValue2 = 171735,
                    YValue3 = 269805,
                    IsDate  = true,
                };

                erg.Add(item);

                //
                item = new ChartItemData
                {
                    XValue  = date.ToOADate(),
                    YValue1 = 276137,
                    YValue2 = 71735,
                    YValue3 = 69805,
                    IsDate  = true,
                };

                erg.Add(item);

                data.PropertiesToUseForChart.Add("XValue");
                data.PropertiesToUseForChart.Add("YValue1");
                data.PropertiesToUseForChart.Add("YValue2");
                data.PropertiesToUseForChart.Add("YValue3");

                data.LabelsForSeries.Add("Aktien");
                data.LabelsForSeries.Add("Renten");
                data.LabelsForSeries.Add("Liquidität");
            }

            data.ChartStyle.XAxisNumberformat = "dd.MM.yyyy";
        }
Beispiel #19
0
        protected override void DrawChartWithRawSeriesInfo()
        {
            SeriesInfo   si        = null;
            ChartUtility chartUtil = new ChartUtility();
            DataTable    dtTemp    = new DataTable();
            ArrayList    arrTemp   = new ArrayList();
            Type         tempType  = null;
            LinkedList   lnkList   = new LinkedList();

            if (this.dtDataSource.Rows.Count == 0)
            {
                return;
            }

            for (int i = 0; i < this.dtDataSource.Columns.Count; i++)
            {
                string seriesName     = this.dtDataSource.Columns[i].ColumnName;
                string seriesNameTemp = this.dtDataSource.Columns[i].ColumnName.Split('^')[0];

                if (seriesName == CommonChart.COLUMN_NAME_SEQ_INDEX)
                {
                    tempType = this.dtDataSource.Rows[0][i].GetType();
                }
                else if (lstRawColumn.Contains(seriesName))
                {
                    if (dtTemp.Columns.Contains(seriesNameTemp))
                    {
                        continue;
                    }
                    else if (!lnkList.Contains(seriesNameTemp))
                    {
                        dtTemp = new DataTable();
                        dtTemp.Columns.Add(CommonChart.COLUMN_NAME_SEQ_INDEX, tempType);
                        for (int k = 0; k < this.dtDataSource.Rows.Count; k++)
                        {
                            if (this.dtDataSource.Rows[k][i] != null && this.dtDataSource.Rows[k][i].ToString().Length > 0)
                            {
                                dtTemp.Columns.Add(seriesNameTemp, this.dtDataSource.Rows[k][i].GetType());
                                break;
                            }
                        }
                        lnkList.Add(seriesNameTemp, dtTemp.Clone());
                        arrTemp.Add(seriesNameTemp);
                    }
                }
            }

            if (lnkList.Count > 0)
            {
                for (int i = 0; i < arrTemp.Count; i++)
                {
                    DataRow   dr = null;
                    DataTable dt = new DataTable();
                    dt = ((DataTable)lnkList[arrTemp[i].ToString()]).Clone();
                    if (dt.Columns.Count > 1)
                    {
                        string sTempColumnName = dt.Columns[1].ColumnName;

                        for (int j = 0; j < this.dtDataSource.Rows.Count; j++)
                        {
                            for (int k = 0; k < this.dtDataSource.Columns.Count; k++)
                            {
                                if (this.dtDataSource.Columns[k].ColumnName.Split('^')[0] == sTempColumnName)
                                {
                                    if (this.dtDataSource.Rows[j][k] != null && this.dtDataSource.Rows[j][k].ToString().Length > 0)
                                    {
                                        dr    = dt.NewRow();
                                        dr[0] = dtDataSource.Rows[j][CommonChart.COLUMN_NAME_SEQ_INDEX];;
                                        dr[1] = dtDataSource.Rows[j][k];
                                        dt.Rows.Add(dr);
                                    }
                                }
                            }
                        }
                        lnkList.Remove(arrTemp[i].ToString());
                        lnkList.Add(arrTemp[i].ToString(), dt);
                    }
                }

                int jcolor = 0;

                for (int i = 0; i < arrTemp.Count; i++)
                {
                    si             = new SeriesInfo(typeof(Line), arrTemp[i].ToString(), ((DataTable)lnkList[arrTemp[i].ToString()]), CommonChart.COLUMN_NAME_SEQ_INDEX, arrTemp[i].ToString());
                    si.SeriesColor = chartUtil.GetSeriesColor(i);
                    if (si.SeriesColor == Color.Red || si.SeriesColor == Color.Black)
                    {
                        jcolor++;
                        si.SeriesColor = chartUtil.GetSeriesColor(jcolor);
                    }
                    this.DrawChart(si);
                    jcolor++;
                }
            }
            //si = new SeriesInfo(typeof(Line), seriesName, this.dtDataSource, CommonChart.COLUMN_NAME_SEQ_INDEX, seriesName);


            //switch (seriesName)
            //{
            //    case Definition.CHART_COLUMN.UCL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.UCL); break;
            //    case Definition.CHART_COLUMN.LCL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.LCL); break;
            //    case Definition.CHART_COLUMN.LSL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.LSL); break;
            //    case Definition.CHART_COLUMN.USL: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.USL); break;
            //    case Definition.CHART_COLUMN.MIN: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.MIN); break;
            //    case Definition.CHART_COLUMN.MAX: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.MAX); break;
            //    case Definition.CHART_COLUMN.TARGET: si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.TARGET); break;
            //    default:
            //        if ((seriesName == Definition.CHART_COLUMN.RAW)
            //           || (seriesName == Definition.CHART_COLUMN.STDDEV)
            //           || (seriesName == Definition.CHART_COLUMN.AVG)
            //           || (seriesName == Definition.CHART_COLUMN.RANGE)
            //           || (seriesName == Definition.CHART_COLUMN.MA)
            //           || (seriesName == Definition.CHART_COLUMN.MSD)
            //           || (seriesName == Definition.CHART_COLUMN.MEAN)
            //           || (seriesName == Definition.CHART_COLUMN.EWMAMEAN)
            //           || (seriesName == Definition.CHART_COLUMN.EWMARANGE)
            //           || (seriesName == Definition.CHART_COLUMN.EWMASTDDEV))
            //        {
            //            si.SeriesColor = chartUtil.GetSeriesColor((int)ChartUtility.CHAERT_SERIES_COLOR.AVG);
            //        }
            //        else
            //            si.SeriesColor = chartUtil.GetSeriesColor(iCount++);

            //        break;
            //}
            //this.DrawChart(si);
            //}
        }
Beispiel #20
0
        //modified end SPC-851

        //modified by enkim 2012.05.21 SPC-851
        protected override void DrawChartWithRawSeriesInfoForSumChart()
        {
            SeriesInfo   si        = null;
            ChartUtility chartUtil = new ChartUtility();
            DataTable    dtTemp    = new DataTable();
            ArrayList    arrTemp   = new ArrayList();
            Type         tempType  = null;
            LinkedList   lnkList   = new LinkedList();

            if (this.dtDataSource.Rows.Count == 0)
            {
                return;
            }

            for (int i = 0; i < this.dtDataSource.Columns.Count; i++)
            {
                string seriesName     = this.dtDataSource.Columns[i].ColumnName;
                string seriesNameTemp = this.dtDataSource.Columns[i].ColumnName.Split('^')[0];

                if (seriesName == CommonChart.COLUMN_NAME_SEQ_INDEX)
                {
                    tempType = this.dtDataSource.Rows[0][i].GetType();
                }
                else if (lstRawColumn.Contains(seriesName))
                {
                    if (dtTemp.Columns.Contains(seriesNameTemp))
                    {
                        continue;
                    }
                    else if (!lnkList.Contains(seriesNameTemp))
                    {
                        dtTemp = new DataTable();
                        dtTemp.Columns.Add(CommonChart.COLUMN_NAME_SEQ_INDEX, tempType);
                        if (!dtTemp.Columns.Contains("TIME"))
                        {
                            dtTemp.Columns.Add("TIME", typeof(DateTime));
                        }
                        if (!dtTemp.Columns.Contains(Definition.CHART_COLUMN.TIME2))
                        {
                            dtTemp.Columns.Add(Definition.CHART_COLUMN.TIME2, typeof(string));
                        }

                        for (int k = 0; k < this.dtDataSource.Rows.Count; k++)
                        {
                            if (this.dtDataSource.Rows[k][i] != null && this.dtDataSource.Rows[k][i].ToString().Length > 0)
                            {
                                dtTemp.Columns.Add(seriesNameTemp, this.dtDataSource.Rows[k][i].GetType());
                                break;
                            }
                        }
                        lnkList.Add(seriesNameTemp, dtTemp.Clone());
                        arrTemp.Add(seriesNameTemp);
                    }
                }
            }

            if (lnkList.Count > 0)
            {
                for (int i = 0; i < arrTemp.Count; i++)
                {
                    DataRow   dr = null;
                    DataTable dt = new DataTable();
                    dt = ((DataTable)lnkList[arrTemp[i].ToString()]).Clone();
                    if (dt.Columns.Count > 3)
                    {
                        string sTempColumnName = dt.Columns[3].ColumnName;
                        for (int j = 0; j < this.dtDataSource.Rows.Count; j++)
                        {
                            for (int k = 0; k < this.dtDataSource.Columns.Count; k++)
                            {
                                if (this.dtDataSource.Columns[k].ColumnName.Split('^')[0] == sTempColumnName)
                                {
                                    if (this.dtDataSource.Rows[j][k] != null && this.dtDataSource.Rows[j][k].ToString().Length > 0)
                                    {
                                        dr    = dt.NewRow();
                                        dr[0] = dtDataSource.Rows[j][CommonChart.COLUMN_NAME_SEQ_INDEX];
                                        dr[1] = dtDataSource.Rows[j]["TIME"];
                                        dr[2] = dtDataSource.Rows[j][Definition.CHART_COLUMN.TIME2];
                                        dr[3] = dtDataSource.Rows[j][k];
                                        dt.Rows.Add(dr);
                                    }
                                }
                            }
                        }

                        lnkList.Remove(arrTemp[i].ToString());
                        lnkList.Add(arrTemp[i].ToString(), dt);
                    }
                }

                int jcolor = 0;

                for (int i = 0; i < arrTemp.Count; i++)
                {
                    si            = new SeriesInfo(typeof(ExtremeBFastLine), arrTemp[i].ToString(), ((DataTable)lnkList[arrTemp[i].ToString()]), CommonChart.COLUMN_NAME_SEQ_INDEX, arrTemp[i].ToString());
                    si.TreatNulls = TreatNullsStyle.DoNotPaint;

                    si.SeriesColor = chartUtil.GetSeriesColor(jcolor);
                    if (si.SeriesColor == Color.Red || si.SeriesColor == Color.Black)
                    {
                        jcolor++;
                        si.SeriesColor = chartUtil.GetSeriesColor(jcolor);
                    }
                    this.DrawChart(si);
                    jcolor++;
                }
            }
        }