Puntos de Datos de Gráfico 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 Sunburst, Diagrama Sunburst, Gráfico Radial o Gráfico Circular Multinivel). Estos gráficos muestran datos jerárquicos organizados en forma de árbol, desde las hojas hasta la parte superior de la rama. Las hojas están definidas por los puntos de datos de la serie, y cada nivel de agrupación anidado subsiguiente está definido por la categoría correspondiente. Aspose.Slides para PHP a través de Java permite formatear los puntos de datos del Gráfico Sunburst y Treemap.
Aquí hay un Gráfico Sunburst, donde los datos en la columna Series1 definen los nodos hoja, mientras que otras columnas definen los puntos de datos jerárquicos:
Comencemos agregando un nuevo gráfico Sunburst a la presentación:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Sunburst, 100, 100, 450, 400);
# ...
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Ver también
Si hay necesidad de formatear los puntos de datos del gráfico, debemos usar lo siguiente:
IChartDataPointLevelsManager, IChartDataPointLevel clases y IChartDataPoint.getDataPointLevels método proporcionan acceso para formatear los puntos de datos de los gráficos Treemap y Sunburst. IChartDataPointLevelsManager se utiliza para acceder a categorías multinivel; representa el contenedor de IChartDataPointLevel objetos. Básicamente es un envoltorio para IChartCategoryLevelsManager con las propiedades añadidas específicas para los puntos de datos. La clase IChartDataPointLevel tiene dos métodos: getFormat y getDataLabel que proporcionan acceso a configuraciones correspondientes.
Mostrar Valor del Punto de Datos
Mostrar el valor del punto de datos “Hoja 4”:
$dataPoints = $chart->getChartData()->getSeries()->get_Item(0)->getDataPoints();
$dataPoints->get_Item(3)->getDataPointLevels()->get_Item(0)->getLabel()->getDataLabelFormat()->setShowValue(true);
Establecer Etiqueta y Color del Punto de Datos
Establecer la etiqueta de datos “Rama 1” para mostrar el nombre de la serie (“Series1”) en lugar del nombre de la categoría. Luego establecer el color del texto en amarillo:
$branch1Label = $dataPoints->get_Item(0)->getDataPointLevels()->get_Item(0)->getLabel();
$branch1Label->getDataLabelFormat()->setShowCategoryName(false);
$branch1Label->getDataLabelFormat()->setShowSeriesName(true);
$branch1Label->getDataLabelFormat()->getTextFormat()->getPortionFormat()->getFillFormat()->setFillType(FillType::Solid);
$branch1Label->getDataLabelFormat()->getTextFormat()->getPortionFormat()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->YELLOW);
Establecer Color de Rama del Punto de Datos
Cambiar el color de la rama “Tallo 4”:
$pres = new Presentation();
try {
$chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Sunburst, 100, 100, 450, 400);
$dataPoints = $chart->getChartData()->getSeries()->get_Item(0)->getDataPoints();
$stem4branch = $dataPoints->get_Item(9)->getDataPointLevels()->get_Item(1);
$stem4branch->getFormat()->getFill()->setFillType(FillType::Solid);
$stem4branch->getFormat()->getFill()->getSolidFillColor()->setColor(java("java.awt.Color")->RED);
$pres->save("pres.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}