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.
Fig. 723 Chart with transparency applied to wall and floor
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.
Fig. 725 Chart with wall and floor gradient transparency
Fig. 726 Chart Wall Gradient Transparency Dialog