Puntos de Datos del Gráfico de Treemap y Sunburst

Entre otros tipos de gráficos de PowerPoint, hay dos tipos “jerárquicos” - Treemap y Sunburst (también conocido como Gráfico de Sunburst, Diagrama de Sunburst, Gráfico Radial o Gráfico de Pastel Multi Nivel). Estos gráficos muestran datos jerárquicos organizados como un árbol - desde las hojas hasta la parte superior de la rama. Las hojas se definen por los puntos de datos de la serie, y cada nivel de agrupamiento anidado subsiguiente se define por la categoría correspondiente. Aspose.Slides para .NET permite formatear los puntos de datos del Gráfico de Sunburst y Treemap en C#.

Aquí hay un Gráfico de Sunburst, donde los datos en la columna Series1 definen los nodos hoja, mientras que otras columnas definen los puntos de datos jerárquicos:

todo:image_alt_text

Comencemos añadiendo un nuevo gráfico de Sunburst a la presentación:

using (Presentation pres = new Presentation())
{
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Sunburst, 100, 100, 450, 400);
    // ...
}

Si hay necesidad de formatear los puntos de datos del gráfico, debemos usar lo siguiente:

IChartDataPointLevelsManager,
IChartDataPointLevel clases
y la propiedad IChartDataPoint.DataPointLevels
proporcionan acceso para formatear los puntos de datos de los gráficos de Treemap y Sunburst.
IChartDataPointLevelsManager
se utiliza para acceder a categorías de múltiples niveles - representa el contenedor de
IChartDataPointLevel objetos.
Básicamente, es un contenedor para
IChartCategoryLevelsManager con
las propiedades añadidas específicas para los puntos de datos.
La clase IChartDataPointLevel tiene
dos propiedades: Format y
DataLabel que
proporcionan acceso a los ajustes correspondientes.

Mostrar Valor del Punto de Datos

Mostrar el valor del punto de datos “Hoja 4”:

IChartDataPointCollection dataPoints = chart.ChartData.Series[0].DataPoints;
dataPoints[3].DataPointLevels[0].Label.DataLabelFormat.ShowValue = true;

todo:image_alt_text

Establecer Etiqueta y Color del Punto de Datos

Establecer la etiqueta de datos de “Rama 1” para mostrar el nombre de la serie (“Serie1”) en lugar del nombre de la categoría. Luego establecer el color del texto a amarillo:

IDataLabel branch1Label = dataPoints[0].DataPointLevels[2].Label;
branch1Label.DataLabelFormat.ShowCategoryName = false;
branch1Label.DataLabelFormat.ShowSeriesName = true;

branch1Label.DataLabelFormat.TextFormat.PortionFormat.FillFormat.FillType = FillType.Solid;
branch1Label.DataLabelFormat.TextFormat.PortionFormat.FillFormat.SolidFillColor.Color = Color.Yellow;

todo:image_alt_text

Establecer Color de Rama del Punto de Datos

Cambiar el color de la rama “Tallo 4”:

using (Presentation pres = new Presentation())
{
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Sunburst, 100, 100, 450, 400);
    
    IChartDataPointCollection dataPoints = chart.ChartData.Series[0].DataPoints;

    IChartDataPointLevel stem4branch = dataPoints[9].DataPointLevels[1];
    
    stem4branch.Format.Fill.FillType = FillType.Solid;
    stem4branch.Format.Fill.SolidFillColor.Color = Color.Red;
      
    pres.Save("pres.pptx", SaveFormat.Pptx);
}

todo:image_alt_text