Chart2 Direct Series Data Labels Font Only (Static)

Overview

The ooodev.format.chart2.direct.series.data_labels.font.FontOnly class gives you similar options for data labels as Fig. 788 Font Dialog, but without the dialog.

Calls to the Chart2.style_data_series() and Chart2.style_data_point() methods are used to set the data labels font of a Chart.

Setup

General setup for this example.

import uno
from ooodev.format.chart2.direct.series.data_labels.font import FontOnly as LblFontOnly
from ooodev.format.chart2.direct.general.borders import LineProperties as ChartLineProperties
from ooodev.format.chart2.direct.general.area import Gradient as ChartGradient, PresetGradientKind
from ooodev.office.calc import Calc
from ooodev.office.chart2 import Chart2
from ooodev.utils.color import StandardColor
from ooodev.gui import GUI
from ooodev.loader.lo import Lo

def main() -> int:
    with Lo.Loader(connector=Lo.ConnectPipe()):
        doc = Calc.open_doc("col_chart.ods")
        GUI.set_visible(True, doc)
        Lo.delay(500)
        Calc.zoom(doc, GUI.ZoomEnum.ZOOM_100_PERCENT)

        sheet = Calc.get_active_sheet()

        Calc.goto_cell(cell_name="A1", doc=doc)
        chart_doc = Chart2.get_chart_doc(sheet=sheet, chart_name="col_chart")

        chart_bdr_line = ChartLineProperties(color=StandardColor.BLUE_LIGHT3, width=0.7)
        chart_grad = ChartGradient.from_preset(chart_doc, PresetGradientKind.TEAL_BLUE)
        Chart2.style_background(chart_doc=chart_doc, styles=[chart_grad, chart_bdr_line])

        data_lbl_font = LblFontOnly(name="Lucida Calligraphy", size=14, font_style="italic")
        Chart2.style_data_series(chart_doc=chart_doc, styles=[data_lbl_font])

        Lo.delay(1_000)
        Lo.close_doc(doc)
    return 0

if __name__ == "__main__":
    SystemExit(main())

Apply the font to Data Labels

Before formatting the chart is seen in Fig. 829.

Style Data Series

# ... other code
data_lbl_font = LblFontOnly(name="Lucida Calligraphy", size=14, font_style="italic")
Chart2.style_data_series(chart_doc=chart_doc, styles=[data_lbl_font])

Running the above code will produce the following output shown in Fig. 788 and Fig. 789.

Chart with Data Series Labels Font set

Fig. 788 Chart with Data Series Labels Font set

Chart Data Labels Dialog Font

Fig. 789 Chart Data Labels Dialog Font

Style Data Point

# ... other code
Chart2.style_data_point(chart_doc=chart_doc, series_idx=0, idx=0, styles=[data_lbl_font])

Running the above code will produce the following output shown in Fig. 790.

Chart with Data Point Label Font set

Fig. 790 Chart with Data Point Label Font set