نقاط البيانات لرسم الشجرة والمخطط الشمسي

من بين أنواع المخططات في PowerPoint الأخرى، هناك نوعان “هرميان” - مخطط الشجرة و المخطط الشمسي (المعروف أيضًا باسم مخطط شمسي، مخطط شمسي، مخطط شعاعي، رسم شعاعي أو مخطط دائري متعدد المستويات). تعرض هذه المخططات بيانات هرمية منظمة على شكل شجرة - من الأوراق إلى قمة الفرع. يتم تحديد الأوراق بواسطة نقاط بيانات السلاسل، وكل مستوى تجميع متداخل لاحق يتم تحديده بواسطة الفئة المقابلة. يتيح Aspose.Slides لـ Java تنسيق نقاط بيانات المخطط الشمسي ومخطط الشجرة في Java.

إليك مخطط شمسي، حيث تحدد البيانات في عمود Series1 العقد الورقية، بينما تحدد الأعمدة الأخرى نقاط البيانات الهرمية:

todo:image_alt_text

لنبدأ بإضافة مخطط شمسي جديد إلى العرض التقديمي:

Presentation pres = new Presentation();
try {
    IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Sunburst, 100, 100, 450, 400);

    // ...
} finally {
    if (pres != null) pres.dispose();
}

إذا كانت هناك حاجة لتنسيق نقاط بيانات المخطط، يجب علينا استخدام ما يلي:

IChartDataPointLevelsManager،  IChartDataPointLevel الفئات  و IChartDataPoint.getDataPointLevels الطريقة  توفر الوصول لتنسيق نقاط بيانات مخططات الشجرة والمخطط الشمسي.  IChartDataPointLevelsManager يستخدم للوصول إلى الفئات متعددة المستويات - يمثل حاوية لـ  IChartDataPointLevel كائنات. أساسًا هو غلاف لـ  IChartCategoryLevelsManager مع الخصائص المضافة المحددة لنقاط البيانات.  فئة IChartDataPointLevel لديها طريقتان: getFormat و  getDataLabel والتي توفر الوصول للإعدادات المقابلة.

عرض قيمة نقطة البيانات

عرض قيمة نقطة البيانات “ورقة 4”:

IChartDataPointCollection dataPoints = chart.getChartData().getSeries().get_Item(0).getDataPoints();
dataPoints.get_Item(3).getDataPointLevels().get_Item(0).getLabel().getDataLabelFormat().setShowValue(true);

todo:image_alt_text

تعيين علامة نقطة البيانات و اللون

تعيين علامة بيانات “فرع 1” لعرض اسم السلسلة (“Series1”) بدلاً من اسم الفئة. ثم قم بتعيين لون النص إلى الأصفر:

IDataLabel 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(Color.YELLOW);

todo:image_alt_text

تعيين لون فرع نقطة البيانات

تغيير لون فرع “بخار 4”:

Presentation pres = new Presentation();
try {
    IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Sunburst, 100, 100, 450, 400);

    IChartDataPointCollection dataPoints = chart.getChartData().getSeries().get_Item(0).getDataPoints();

    IChartDataPointLevel stem4branch = dataPoints.get_Item(9).getDataPointLevels().get_Item(1);

    stem4branch.getFormat().getFill().setFillType(FillType.Solid);
    stem4branch.getFormat().getFill().getSolidFillColor().setColor(Color.RED);

    pres.save("pres.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

todo:image_alt_text