# encoding: utf-8 """ |ChartFormat| and related objects. |ChartFormat| acts as proxy for the `spPr` element, which provides visual shape properties such as line and fill for chart elements. """ from __future__ import absolute_import, division, print_function, unicode_literals from .fill import FillFormat from .line import LineFormat from ..shared import ElementProxy from ..util import lazyproperty class ChartFormat(ElementProxy): """ The |ChartFormat| object provides access to visual shape properties for chart elements like |Axis|, |Series|, and |MajorGridlines|. It has two properties, :attr:`fill` and :attr:`line`, which return a |FillFormat| and |LineFormat| object respectively. The |ChartFormat| object is provided by the :attr:`format` property on the target axis, series, etc. """ __slots__ = ("_fill", "_line") @lazyproperty def fill(self): """ |FillFormat| instance for this object, providing access to fill properties such as fill color. """ spPr = self._element.get_or_add_spPr() return FillFormat.from_fill_parent(spPr) @lazyproperty def line(self): """ The |LineFormat| object providing access to the visual properties of this object, such as line color and line style. """ spPr = self._element.get_or_add_spPr() return LineFormat(spPr)