コード例 #1
0
        public chartModel BuildDonutChart(DataTable dataTable, String ColumnForLabel, String ColumnForValue)
        {
            var        output = new chartModel();
            DataColumn val    = dataTable.Columns[ColumnForValue];

            foreach (DataRow dr in dataTable.Rows)
            {
                chartDataColumn cdc = new chartDataColumn(dr[ColumnForLabel].ToString(), dr[ColumnForValue]);
                cdc.dataFormatting = val.GetFormat();
                output.data.columns.Add(cdc);
            }
            output.data.type   = chartTypeEnum.donut;
            output.chartFormat = new chartTypeFormatting()
            {
                axisType = chartTypeEnum.donut,
                title    = dataTable.GetTitle()
            };
            return(output);
        }
コード例 #2
0
        public chartModel BuildDonutChart(DataTable dataTable)
        {
            var output = new chartModel();

            foreach (DataColumn dc in dataTable.Columns)
            {
                if (dc.DataType.isNumber())
                {
                    chartDataColumn cdc = new chartDataColumn(dc);
                    output.data.columns.Add(cdc);
                }
            }
            output.data.type   = chartTypeEnum.donut;
            output.chartFormat = new chartTypeFormatting()
            {
                axisType = chartTypeEnum.donut,
                title    = dataTable.GetTitle()
            };

            return(output);
        }
コード例 #3
0
        public chartModel BuildBarChart(DataTable dataTable, String ColumnForXLabel = "")
        {
            var        output     = new chartModel();
            DataColumn dateColumn = null;

            if (ColumnForXLabel != "")
            {
                dateColumn = dataTable.Columns[ColumnForXLabel];
            }


            foreach (DataColumn dc in dataTable.Columns)
            {
                chartDataColumn cdc = new chartDataColumn(dc);
                if (dc == dateColumn)
                {
                    cdc.columnLabel = "x";
                    output.data.dataAxisPairs.Add(new dataAxisXYPair()
                    {
                        XColumnName = "x",
                        YColumnName = "x"
                    });
                    output.axis.Add(new chartAxis()
                    {
                        axisLetter = "x",
                        label      = dateColumn.GetHeading(),
                        axisType   = chartTypeEnum.timeseries,
                        tick       = new chartAxisTick()
                        {
                            format = "%Y-%m-%d"
                        }
                    });
                }
                else
                {
                }

                output.axis.Add(new chartAxis()
                {
                    axisLetter = "y",
                    label      = "y",
                    axisType   = chartTypeEnum.timeseries,
                    tick       = new chartAxisTick()
                    {
                        isFormatJS = true,
                        format     = " d3.format(\",\") "
                    }
                });

                output.data.columns.Add(cdc);
            }

            output.data.type = chartTypeEnum.bar;

            output.chartFormat = new chartTypeFormatting()
            {
                axisType = chartTypeEnum.bar,
                width    = 0.8,
                title    = dataTable.GetTitle()
            };

            return(output);
        }
コード例 #4
0
        public chartModel BuildTimeseriesChart(DataTable dataTable, String ColumnForDate)
        {
            var        output     = new chartModel();
            DataColumn dateColumn = dataTable.Columns[ColumnForDate];

            if (dateColumn == null)
            {
                foreach (DataColumn dc in dataTable.Columns)
                {
                    if (dc.GetValueType() == typeof(DateTime))
                    {
                        dateColumn = dc;
                    }
                }
            }

            foreach (DataColumn dc in dataTable.Columns)
            {
                chartDataColumn cdc = new chartDataColumn(dc);
                if (dc != dateColumn)
                {
                }
                else
                {
                    cdc.columnLabel = "x";
                    output.data.dataAxisPairs.Add(new dataAxisXYPair()
                    {
                        XColumnName = "x",
                        YColumnName = "x"
                    });
                    output.axis.Add(new chartAxis()
                    {
                        axisLetter = "x",
                        label      = dc.GetHeading(),
                        axisType   = chartTypeEnum.timeseries,
                        tick       = new chartAxisTick()
                        {
                            format = "%Y-%m-%d"
                        }
                    });
                }

                output.data.columns.Add(cdc);



                if (dc.GetValueType().isNumber())
                {
                }
            }


            output.axis.Add(new chartAxis()
            {
                axisLetter = "y",
                label      = "y",
                axisType   = chartTypeEnum.timeseries,
                tick       = new chartAxisTick()
                {
                    isFormatJS = true,
                    format     = " d3.format(\",\") "
                }
            });

            /*
             * output.chartFormat = new chartTypeFormatting()
             * {
             *  axisType = chartTypeEnum.donut,
             *  title = dataTable.GetTitle()
             * };*/
            return(output);
        }