Tienda Web
Área de Clientes
MindFusion

P: Tengo datos en 8 categorías y 3 valores distintos para cada uno. Quiero mostrar a estas categorías en un gráfico apilado con el nombre de cada categoría como una etiqueta, pero no sé cómo hacerlo.

R: Lo que quiere mostrar puede ser hecho añadiendo 3 BarSeries al control de gráficos de barra. Luego puede enlazar las propiedades XDataPath o YDataPath de cada serie al campo apropiado en su fuente de datos. Establezca el tipo de barra a ser apilada.

Aquí está cómo construir un gráfico de columna apilado:

 //the first series is predefined
 BarSeries series1 = barChart1.Series[0] as BarSeries;
 series1.YDataPath = "EuropeSales";
 series1.XData = indexes;
 series1.BarType = BarType.VerticalStack;

 BarSeries series2 = new BarSeries();
 series2.YDataPath = "AsiaSales";
 series2.XData = indexes;
 barChart1.Series.Add(series2);
 series2.BarType = BarType.VerticalStack;

 BarSeries series3 = new BarSeries();
 series3.YDataPath = "USASales";
 series3.XData = indexes;
 barChart1.Series.Add(series3);
 series3.BarType = BarType.VerticalStack;


Aquí está una lista de ejemplo con los datos usados para enlazar el gráfico:

var salesList = new List()
 {
 new Sales(){Category="apples", EuropeSales=34, AsiaSales=12, USASales=24},
 new Sales(){Category="oranges", EuropeSales=23, AsiaSales=17, USASales=10},
 new Sales(){Category="bananas", EuropeSales=4, AsiaSales=31, USASales=27},
 new Sales(){Category="cherries", EuropeSales=8, AsiaSales=9, USASales=30} 
 };

Asignamos la fuente de datos y establecemos el tipo de etiquetas para el eje X como texto personalizado. La propiedad XLabelPath establece el nombre del campo que proporciona las etiquetas personalizadas:

 barChart1.DataSource = salesList;
 barChart1.XAxisSettings.LabelType = LabelType.CustomText;
 barChart1.XLabelPath = "Category";

Copyright © 2001-2024 MindFusion LLC. All rights reserved.
Terms of use - Contactos