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))); }
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)); }