Точки данных диаграммы "Карта дерева" и "Солнечный луч"

Среди других типов диаграмм PowerPoint есть два “иерархических” типа - Карта дерева и Солнечный луч (также известный как График солнечного луча, Диаграмма солнечного луча, Радиальная диаграмма, Радиальный график или Многоуровневая круговая диаграмма). Эти диаграммы отображают иерархические данные, организованные в виде дерева - от листьев до顶端 ветки. Листья определяются данными серий, а каждая последующая вложенная группа определяется соответствующей категорией. Aspose.Slides для .NET позволяет форматировать точки данных диаграммы солнечного луча и карты дерева на C#.

Вот диаграмма солнечного луча, где данные в столбце Series1 определяют листовые узлы, в то время как другие столбцы определяют иерархические точки данных:

todo:image_alt_text

Давайте начнем с добавления новой диаграммы солнечного луча в презентацию:

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

Если необходимо отформатировать точки данных диаграммы, следует использовать следующее:

IChartDataPointLevelsManagerIChartDataPointLevel классы  и IChartDataPoint.DataPointLevels свойство  обеспечивают доступ к форматированию точек данных диаграмм карта дерева и солнечный луч.  IChartDataPointLevelsManager используется для доступа к многослойным категориям - он представляет контейнер для IChartDataPointLevel объектов. По сути, это обертка для  IChartCategoryLevelsManager с свойствами, добавленными, специфичными для точек данных.  IChartDataPointLevel класс имеет два свойства: Format и  DataLabel, которые обеспечивают доступ к соответствующим настройкам.

Показать значение точки данных

Показать значение точки данных “Лист 4”:

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

todo:image_alt_text

Задать метку и цвет точки данных

Задать метку данных “Ветка 1”, чтобы показать название серии (“Series1”) вместо имени категории. Затем установить цвет текста на желтый:

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

Задать цвет точки данных для ветки

Изменить цвет ветки “С Stem 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