Chart2 Direct Axis Font Effects (Static)

Overview

The ooodev.format.chart2.direct.axis.font.FontEffects class gives you the similar options for data labels as Fig. 664 Font Effects Dialog, but without the dialog.

Methods for formatting the number of an axis are:

Setup

General setup for this example.

import uno
from ooodev.format.chart2.direct.axis.font import FontEffects as AxisFontEffects
from ooodev.format.chart2.direct.axis.font import FontUnderlineEnum, FontLine
from ooodev.format.chart2.direct.general.borders import LineProperties as ChartLineProperties
from ooodev.format.chart2.direct.general.area import Gradient as ChartGradient
from ooodev.format.chart2.direct.general.area import GradientStyle, ColorRange, Offset
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("bon_voyage.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="Object 1")

        chart_bdr_line = ChartLineProperties(color=StandardColor.GREEN_DARK2, width=0.9)
        chart_grad = ChartGradient(
            chart_doc=chart_doc,
            step_count=0,
            offset=Offset(41, 50),
            style=GradientStyle.RADIAL,
            grad_color=ColorRange(StandardColor.TEAL, StandardColor.YELLOW_DARK1),
        )
        Chart2.style_background(chart_doc=chart_doc, styles=[chart_grad, chart_bdr_line])

        axis_font_effects = AxisFontEffects(
            color=StandardColor.RED,
            underline=FontLine(line=FontUnderlineEnum.SINGLE, color=StandardColor.BLUE),
            shadowed=True,
        )
        Chart2.style_y_axis(chart_doc=chart_doc, styles=[axis_font_effects])

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

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

Apply the font effects Axis

Before formatting the chart is seen in Fig. 827.

Style Y-Axis

from ooodev.format.chart2.direct.axis.font import FontEffects as AxisFontEffects
from ooodev.format.chart2.direct.axis.font import FontUnderlineEnum, FontLine
# ... other code

axis_font_effects = AxisFontEffects(
    color=StandardColor.RED,
    underline=FontLine(line=FontUnderlineEnum.SINGLE, color=StandardColor.BLUE),
    shadowed=True,
)
Chart2.style_y_axis(chart_doc=chart_doc, styles=[axis_font_effects])

Running the above code will produce the following output in Fig. 663 and Fig. 664.

Chart with Y-Axis font effects applied

Fig. 663 Chart with Y-Axis font effects applied

Chart Data Labels Dialog Font Effects

Fig. 664 Chart Data Labels Dialog Font Effects

Style Secondary Y-Axis

# ... other code
Chart2.style_y_axis2(chart_doc=chart_doc, styles=[axis_font_effects])

Running the above code will produce the following output in Fig. 665.

Chart with Y-Axis font effects applied

Fig. 665 Chart with Y-Axis font effects applied