Chart2 Direct Wall/Floor Transparency (Static)

Overview

Classes in the ooodev.format.chart2.direct.wall.transparency module can be used to set the chart wall and floor transparency.

Setup

General setup for examples.

import uno
from ooodev.format.chart2.direct.wall.transparency import Transparency as WallTransparency
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_chart3d.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.MAGENTA, width=0.7)
        chart_grad = ChartGradient.from_preset(chart_doc, PresetGradientKind.MAHOGANY)
        Chart2.style_background(chart_doc=chart_doc, styles=[chart_grad, chart_bdr_line])

        wall_transparency = WallTransparency(value=40)
        Chart2.style_wall(chart_doc=chart_doc, styles=[wall_transparency])

        floor_transparency = WallTransparency(value=30)
        Chart2.style_floor(chart_doc=chart_doc, styles=[floor_transparency])

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


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

Transparency

Before applying formatting is seen in Fig. 830.

Setting Transparency

The ooodev.format.chart2.direct.wall.transparency.Transparency class can be used to set the transparency of a chart wall and floor.

Apply to wall.

from ooodev.format.chart2.direct.wall.transparency import Transparency as WallTransparency

# ... other code
wall_transparency = WallTransparency(value=40)
Chart2.style_wall(chart_doc=chart_doc, styles=[wall_transparency])

Apply to floor.

floor_transparency = WallTransparency(value=30)
Chart2.style_floor(chart_doc=chart_doc, styles=[floor_transparency])

The results can bee seen in Fig. 723 and Fig. 724.

Chart with transparency applied to wall and floor

Fig. 723 Chart with transparency applied to wall and floor

Chart Area Transparency Dialog

Fig. 724 Chart Area Transparency Dialog

Gradient Transparency

Before applying formatting is seen in Fig. 830.

Setting Gradient

The ooodev.format.chart2.direct.wall.transparency.Gradient class can be used to set the gradient transparency of a chart.

Apply to wall.

from ooodev.format.chart2.direct.wall.transparency import Gradient as WallGradientTransparency
from ooodev.format.chart2.direct.wall.transparency import IntensityRange
from ooodev.utils.data_type.angle import Angle
# ... other code

wall_grad_transparent = WallGradientTransparency(
    chart_doc=chart_doc, angle=Angle(30), grad_intensity=IntensityRange(0, 100)
)
Chart2.style_wall(chart_doc=chart_doc, styles=[wall_grad_transparent])

Apply to Floor.

floor_grad_transparent = WallGradientTransparency(
    chart_doc=chart_doc, angle=Angle(120), grad_intensity=IntensityRange(0, 100)
)
Chart2.style_floor(chart_doc=chart_doc, styles=[floor_grad_transparent])

The results can bee seen in Fig. 725 and Fig. 726.

Chart with wall and floor gradient transparency

Fig. 725 Chart with wall and floor gradient transparency

Chart Wall Gradient Transparency Dialog

Fig. 726 Chart Wall Gradient Transparency Dialog