docs: def decorate(self, other=None, **kwargs):
          """
          Apply style options to a Plottable object.
  
          Returns a reference to self.
          """
          if 'color' in kwargs:
              incompatible = []
              for othercolor in ('linecolor', 'fillcolor', 'markercolor'):
                  if othercolor in kwargs:
                      incompatible.append(othercolor)
              if incompatible:
                  raise ValueError(
                      "Setting both the `color` and the `{0}` attribute{1} "
                      "is ambiguous. Please set only one.".format(
                          ', '.join(incompatible),
                          's' if len(incompatible) != 1 else ''))
          if other is not None:
              decor = other.decorators
              if 'color' in kwargs:
                  decor.pop('linecolor', None)
                  decor.pop('fillcolor', None)
                  decor.pop('markercolor', None)
              decor.update(kwargs)
              kwargs = decor
          for key, value in kwargs.items():
              if key in Plottable.EXTRA_ATTRS_DEPRECATED:
                  newkey = Plottable.EXTRA_ATTRS_DEPRECATED[key]
                  warnings.warn(
                      "`{0}` is deprecated and will be removed in "
                      "future versions. Use `{1}` instead".format(
                          key, newkey),
                      DeprecationWarning)
                  key = newkey
              if key in Plottable.EXTRA_ATTRS:
                  setattr(self, key, value)
              elif key == 'markerstyle':
                  self.SetMarkerStyle(value)
              elif key == 'markercolor':
                  self.SetMarkerColor(value)
              elif key == 'markersize':
                  self.SetMarkerSize(value)
              elif key == 'fillcolor':
                  self.SetFillColor(value)
              elif key == 'fillstyle':
                  self.SetFillStyle(value)
              elif key == 'linecolor':
                  self.SetLineColor(value)
              elif key == 'linestyle':
                  self.SetLineStyle(value)
              elif key == 'linewidth':
                  self.SetLineWidth(value)
              elif key == 'color':
                  self.SetColor(value)
              else:
                  raise AttributeError(
                      "unknown decoration attribute: `{0}`".format(key))
          return self