Hola
Estoy creando graficas en asp.net con el control WebChart, para crear las graficas con datos fijos no tengo ningun problema, asi que este codigo funciona
Código:
ColumnChart chart = new ColumnChart();
chart.MaxColumnWidth = 10;
chart.Fill.Color = Color.FromArgb(50, Color.Red);
chart.Shadow.Visible = true;
chart.Legend = "Pri 0";
ColumnChart chart1 = new ColumnChart();
chart1.MaxColumnWidth = 10;
chart1.Fill.Color = Color.FromArgb(50, Color.Yellow);
chart1.Shadow.Visible = true;
chart1.Legend = "Pri 1";
La linea
roja es la encargada de crear una nueva columna en el grafico. pero cuando trato de crear los objetos dinamicamente uso este codigo
Código:
for(int i=0;i <= miDs.Tables[0].Rows.Count -1;i++)
{
ColumnChart columna = new ColumnChart();
columna.MaxColumnWidth=10;
columna.Fill.Color=Color.Blue;
columna.Legend=miDs.Tables[0].Columns[0].ColumnName.ToString();
columna.Data.Add(new ChartPoint(miDs.Tables[0].Rows[0]["Area"].ToString(),(float)Convert.ToDouble(miDs.Tables[0].Rows[0]["Total"].ToString())));
ChartControl3.Charts.Add(columna);
}
ChartControl3.RedrawChart();
miDs es un dataset que devuelve dos registros, por lo tanto se generan dos columnas
Y hasta cierto punto funciona, pero tengo un problema y es que todos las columnas se crean en base a un mismo objeto(
columna), entonces al colocar el titulo en el eje x solo aparece el nombre de la ultima.
Lo que yo quiero hacer es que cada columna se cree con un nombre diferente, asi que trate de hacer esto:
Código:
for(int i=0;i <= miDs.Tables[0].Rows.Count -1;i++)
{
ColumnChart midDs.Tables[0].Rows[i]["Area"] = new ColumnChart();
.
.
.
}
Que pretendia hacer yo en la linea verde, crear cada columna con un nombre diferente, pero no funciono.
Como referencia dejo la web del control:
WebChart
Gracias