Diagram adatcímkék kezelése prezentációkban Python segítségével

Áttekintés

Az adatcímkék egy diagramon részleteket mutatnak a diagram adat-sorozatairól vagy egyes adatpontokról. Lehetővé teszik az olvasók számára, hogy gyorsan azonosítsák az adat-sorozatokat, és megkönnyítik a diagramok megértését. Az Aspose.Slides for Python esetén engedélyezhet, testreszabhat és formázhat adatcímkéket bármely diagramhoz – kiválaszthatja, hogy mi jelenjen meg (értékek, százalékok, sorozat vagy kategória neve), hol helyezkedjenek el a címkék, és hogy hogyan nézzenek ki (betűtípus, számformátum, elválasztók, vezetővonalak és egyebek). Ez a cikk bemutatja a szükséges API‑kat és példákat, amelyekkel világos, informatív címkéket adhat diagramjaihoz.

Adatcímke pontosságának beállítása

A diagram adatcímkéi gyakran számértékeket jelenítenek meg, amelyekhez egységes pontosság szükséges. Ez a rész bemutatja, hogyan szabályozhatja a tizedesjegyek számát az adatcímkéknél az Aspose.Slides-ben egy megfelelő számformátum alkalmazásával.

Az alábbi Python példában látható, hogyan állítható be a numerikus pontosság a diagram adatcímkéknél:

import aspose.slides as slides
import aspose.slides.charts as charts

with slides.Presentation() as presentation:
    slide = presentation.slides[0]

    chart = slide.shapes.add_chart(charts.ChartType.LINE, 50, 50, 500, 300)

    series = chart.chart_data.series[0]
    series.labels.default_data_label_format.show_value = True
    series.number_format_of_values = "#,##0.00"

    presentation.save("data_label_precision.pptx", slides.export.SaveFormat.PPTX)

Százalékok megjelenítése címkékként

Az Aspose.Slides segítségével megjelenítheti a százalékos értékeket adatcímkeként a diagramokon. Az alábbi példa kiszámítja az egyes pontok arányát a saját kategóriájukban, és a címkét úgy formázza, hogy a százalékot mutassa.

import aspose.slides as slides
import aspose.slides.charts as charts

# Hozzon létre egy példányt a Presentation osztályból.
with slides.Presentation() as presentation:
    slide = presentation.slides[0]

    chart = slide.shapes.add_chart(charts.ChartType.STACKED_COLUMN, 20, 20, 600, 400)
    series = chart.chart_data.series[0]

    total_for_categories = [0]*len(chart.chart_data.categories)
    for k in range(len(chart.chart_data.categories)):
        for i in range(len(chart.chart_data.series)):
            total_for_categories[k] += chart.chart_data.series[i].data_points[k].value.data

    for i in range(len(chart.chart_data.series)):
        series = chart.chart_data.series[i]
        series.labels.default_data_label_format.show_legend_key = False

        for j in range(len(series.data_points)):
            data_point_percent = series.data_points[j].value.data / total_for_categories[j] * 100

            text_portion = slides.Portion()
            text_portion.text = "{0:.2f} %".format(data_point_percent)
            text_portion.portion_format.font_height = 8

            label = series.data_points[j].label
            label.text_frame_for_overriding.text = ""

            paragraph = label.text_frame_for_overriding.paragraphs[0]
            paragraph.portions.add(text_portion)

            label.data_label_format.show_series_name = False
            label.data_label_format.show_percentage = False
            label.data_label_format.show_legend_key = False
            label.data_label_format.show_category_name = False
            label.data_label_format.show_bubble_size = False

    # Mentse el a prezentációt, amely tartalmazza a diagramot.
    presentation.save("percentage_as_label.pptx", slides.export.SaveFormat.PPTX)

Százalékjelek megjelenítése diagram adatcímkékkel

Ez a rész bemutatja, hogyan jeleníthető meg a százalék az adatcímkékben, és hogyan adható hozzá a százalékjel az Aspose.Slides használatával. Megtanulhatja, hogyan engedélyezheti a százalékos értékeket egész sorozatokra vagy konkrét pontokra (ideális kör-, gyűrű- és 100 %-os halmozott diagramoknál), és hogyan szabályozhatja a formázást címke‑beállítások vagy egyedi számformátum segítségével.

Az alábbi Python példa bemutatja, hogyan adhat hozzá százalékjelet egy diagram adatcímkéjéhez:

import aspose.slides as slides
import aspose.slides.charts as charts
import aspose.pydrawing as draw

# Hozzon létre egy példányt a Presentation osztályból.
with slides.Presentation() as presentation:

    # Kapjon egy diára hivatkozást index alapján.
    slide = presentation.slides[0]

    # Hozzon létre egy PercentsStackedColumn diagramot a dián.
    chart = slide.shapes.add_chart(charts.ChartType.PERCENTS_STACKED_COLUMN, 20, 20, 600, 400)

    chart.axes.vertical_axis.is_number_format_linked_to_source = False
    chart.axes.vertical_axis.number_format = "0.00%"

    chart.chart_data.series.clear()

    # Szerezze meg a diagram adat munkafüzetét.
    workbook = chart.chart_data.chart_data_workbook
    worksheet_index = 0

    # Adjon hozzá egy új sorozatot.
    series = chart.chart_data.series.add(workbook.get_cell(worksheet_index, 0, 1, "Reds"), chart.type)
    series.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 1, 1, 0.30))
    series.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 2, 1, 0.50))
    series.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 3, 1, 0.80))
    series.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 4, 1, 0.65))

    # Állítsa be a sorozat kitöltő színét.
    series.format.fill.fill_type = slides.FillType.SOLID
    series.format.fill.solid_fill_color.color = draw.Color.red

    # Állítsa be a címke formátumának tulajdonságait.
    series.labels.default_data_label_format.show_value = True
    series.labels.default_data_label_format.is_number_format_linked_to_source = False
    series.labels.default_data_label_format.number_format = "0.0%"
    series.labels.default_data_label_format.text_format.portion_format.font_height = 10
    series.labels.default_data_label_format.text_format.portion_format.fill_format.fill_type = slides.FillType.SOLID
    series.labels.default_data_label_format.text_format.portion_format.fill_format.solid_fill_color.color = draw.Color.white
    series.labels.default_data_label_format.show_value = True

    # Adjon hozzá egy új sorozatot.
    series2 = chart.chart_data.series.add(workbook.get_cell(worksheet_index, 0, 2, "Blues"), chart.type)
    series2.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 1, 2, 0.70))
    series2.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 2, 2, 0.50))
    series2.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 3, 2, 0.20))
    series2.data_points.add_data_point_for_bar_series(workbook.get_cell(worksheet_index, 4, 2, 0.35))

    # Állítsa be a kitöltés típusát és színét.
    series2.format.fill.fill_type = slides.FillType.SOLID
    series2.format.fill.solid_fill_color.color = draw.Color.blue
    series2.labels.default_data_label_format.show_value = True
    series2.labels.default_data_label_format.is_number_format_linked_to_source = False
    series2.labels.default_data_label_format.number_format = "0.0%"
    series2.labels.default_data_label_format.text_format.portion_format.font_height = 10
    series2.labels.default_data_label_format.text_format.portion_format.fill_format.fill_type = slides.FillType.SOLID
    series2.labels.default_data_label_format.text_format.portion_format.fill_format.solid_fill_color.color = draw.Color.white

    # Mentse el a prezentációt.
    presentation.save("percentage_sign.pptx", slides.export.SaveFormat.PPTX)

Címke távolságának beállítása a tengelytől

Ez a rész bemutatja, hogyan szabályozható a távolság az adatcímkék és a diagram tengelye között az Aspose.Slides-ben. Ennek a távolságnak a módosítása segít elkerülni az átfedéseket és javítja az olvashatóságot a sűrű vizualizációkban.

Az alábbi Python kódban látható, hogyan állítható be a címke távolsága a kategória tengelytől, ha tengely‑alapú diagramot használ:

import aspose.slides as slides
import aspose.slides.charts as charts

# Hozzon létre egy példányt a Presentation osztályból.
with slides.Presentation() as presentation:
    # Szerezzen egy diára hivatkozást.
    slide = presentation.slides[0]

    # Hozzon létre egy klaszterezett oszlopdiagramot a dián.
    chart = slide.shapes.add_chart(charts.ChartType.CLUSTERED_COLUMN, 20, 20, 500, 300)

    # Állítsa be a címke távolságát a kategória (vízszintes) tengelytől.
    chart.axes.horizontal_axis.label_offset = 500

    # Mentse el a prezentációt.
    presentation.save("axis_label_distance.pptx", slides.export.SaveFormat.PPTX)

Címke pozíciójának módosítása

Ha olyan diagramot hoz létre, amely nem használ tengelyeket, például kördiagramot, az adatcímkék túl közel lehetnek a széléhez. Ebben az esetben állítsa be a címke pozícióját, hogy a vezetővonalak egyértelműen láthatóak legyenek.

Az alábbi Python kódban látható, hogyan módosítható a címke pozíciója egy kördiagramon:

import aspose.slides as slides
import aspose.slides.charts as charts

with slides.Presentation() as presentation:
    slide = presentation.slides[0]

    chart = slide.shapes.add_chart(charts.ChartType.PIE, 50, 50, 600, 300)

    series = chart.chart_data.series[0]
    series.labels.default_data_label_format.show_value = True
    series.labels.default_data_label_format.show_leader_lines = True

    label = series.labels[0]
    label.data_label_format.position = charts.LegendDataLabelPosition.OUTSIDE_END

    label.x = 0.05
    label.y = 0.1

    presentation.save("presentation.pptx", slides.export.SaveFormat.PPTX)

Módosított címke pozíció

FAQ

Hogyan akadályozhatom meg, hogy az adatcímkék átfedjék egymást sűrű diagramokon?

Kombinálja az automatikus címkeelhelyezést, a vezetővonalakat és a kisebb betűméretet; ha szükséges, rejtse el egyes mezőket (például a kategóriát), vagy csak a szélsőséges/kulcsfontosságú pontoknál jelenítsen meg címkéket.

Hogyan tilthatom le a címkéket csak a null, negatív vagy üres értékek esetén?

Szűrje meg az adatpontokat a címkék engedélyezése előtt, és kapcsolja ki a megjelenítést 0, negatív vagy hiányzó értékek esetén egy meghatározott szabály szerint.

Hogyan biztosíthatom a címkék egységes stílusát PDF/képek exportálásakor?

Állítsa be kifejezetten a betűtípusokat (család, méret), és ellenőrizze, hogy a betűtípus elérhető-e a rendereléshez használt oldalon, hogy elkerülje a helyettesítő betűtípus használatát.