예제 #1
0
        public string generarDatosParaGraficoDeTorta(DataTable datosGrafico)
        {
            List <string> labels  = new List <string>();
            List <double> datos   = new List <double>();
            double        totales = 0;

            foreach (DataRow fila in datosGrafico.Rows)
            {
                labels.Add(fila.ItemArray[0].ToString());
                datos.Add(double.Parse(fila.ItemArray[1].ToString()));
                totales += double.Parse(fila.ItemArray[1].ToString());
            }
            List <ChartsUtils.pieChartDataObject> datosGraficoJSON = new List <ChartsUtils.pieChartDataObject>();
            int indiceColores = 0;

            for (int i = 0; i < labels.Count; i++)
            {
                //si se acaban los colores, volvemos a poner el mismo color del principio.
                if (i >= ChartsUtils.listaDeColores.Length - 1)
                {
                    indiceColores = 0;
                }
                ChartsUtils.pieChartDataObject datoGrafico = new ChartsUtils.pieChartDataObject
                {
                    color     = ChartsUtils.listaDeColores[indiceColores] + ChartsUtils.transparences.color,
                    highlight = ChartsUtils.listaDeColores[indiceColores] + ChartsUtils.transparences.highlight,
                    label     = labels[i],
                    value     = Math.Round(datos[i] / totales * 100, 2)
                };
                indiceColores++;
                datosGraficoJSON.Add(datoGrafico);
            }
            JavaScriptSerializer s = new JavaScriptSerializer();

            return(s.Serialize(GestorColecciones.desordenarLista(datosGraficoJSON)));
        }
예제 #2
0
        public string generarDatosParaGraficoPArtidos(DataTable datosPrincipalesEquipo)
        {
            double pj = double.Parse(datosPrincipalesEquipo.Rows[0]["PJ"].ToString());
            double pg = double.Parse(datosPrincipalesEquipo.Rows[0]["PG"].ToString());
            double pe = double.Parse(datosPrincipalesEquipo.Rows[0]["PE"].ToString());
            double pp = double.Parse(datosPrincipalesEquipo.Rows[0]["PP"].ToString());
            List <Entidades.ChartsUtils.pieChartDataObject> datosPartidos = new List <ChartsUtils.pieChartDataObject>();

            ChartsUtils.pieChartDataObject partidosGanados = new ChartsUtils.pieChartDataObject
            {
                color     = ChartsUtils.colors.green + ChartsUtils.transparences.color,
                highlight = ChartsUtils.colors.green + ChartsUtils.transparences.highlight,
                label     = "Partidos Ganados",
                value     = Math.Round(pg / pj * 100, 2)
            };
            ChartsUtils.pieChartDataObject partidosEmpatados = new ChartsUtils.pieChartDataObject
            {
                color     = ChartsUtils.colors.yellow + ChartsUtils.transparences.color,
                highlight = ChartsUtils.colors.yellow + ChartsUtils.transparences.highlight,
                label     = "Partidos Empatados",
                value     = Math.Round(pe / pj * 100, 2)
            };
            ChartsUtils.pieChartDataObject partidosPerdidos = new ChartsUtils.pieChartDataObject
            {
                color     = ChartsUtils.colors.red + ChartsUtils.transparences.color,
                highlight = ChartsUtils.colors.red + ChartsUtils.transparences.highlight,
                label     = "Partidos Perdidos",
                value     = Math.Round(pp / pj * 100, 2)
            };
            datosPartidos.Add(partidosPerdidos);
            datosPartidos.Add(partidosEmpatados);
            datosPartidos.Add(partidosGanados);
            JavaScriptSerializer s = new JavaScriptSerializer();

            return(s.Serialize(datosPartidos));
        }