Ejemplo n.º 1
0
        public SingleChartModel GetChart()
        {
            var model = new SingleChartModel();

            model.Chart = "";
            string defaultAttributes = @"bgColor='FFFFFF' showAlternateHGridColor='0' showPlotBorder='0' divLineColor='5b95ad' showValues='0' labelDisplay='WRAP' slantLabels='1' legendShadow='0' legendBorderAlpha='0' showBorder='0' canvasBorderColor='BBBBBB' canvasBorderThickness='3' canvasBgAlpha='100' canvasBgColor='FFFFFF' canvasBorderAlpha='0' adjustDiv='0' vdivlineisdashed='1' numVdivlines='5' vdivlinealpha='50' showAlternateVGridColor='1' VDivLineColor='5b95ad' anchorImageHoverScale='5'";

            chart = new MSCombi2D(defaultAttributes)
            {
                Dataset = new List <DataSet>(),
            };

            if (_input == null || _input.Rows.Count == 0)
            {
                return(model);
            }

            chart.Categories          = new Categories();
            chart.Categories.Category = new List <Category>();
            chart.ControlId           = _controlId;
            if (AbsoluteTousandValue == "Absolute")
            {
                chart.Attributes.Add("formatNumberScale", "0");
            }
            else
            {
                chart.Attributes.Add("numberScaleValue", "1000");//
                chart.Attributes.Add("numberScaleUnit", "K");
            }

            foreach (var col in _input.Columns.Skip(3))
            {
                var category = new Category();
                category.Attributes.Add("label", col.Name);
                chart.Categories.Category.Add(category);
            }
            if (!_uncheckedItems.ToUpper().Contains("TOTAL"))
            {
                chart.Dataset.Add(AddFirstDataSet());
            }

            chart.Dataset.AddRange(AddTrendLineDataSet());

            AddStyles(chart);
            model.Chart = chart.RenderWithScript("100%", "380");
            return(model);
        }