[reportlab-users] How to inherit LinePlot class and add attributes?
reportlab-users@reportlab.com
reportlab-users@reportlab.com
Wed, 17 Sep 2003 13:40:10 -0400 (EDT)
Hi-
I'm working on a time-series line plot. I want to add an attribute to the
LinePlot class, so I tried to inherit the class and just add a few new
attributes.
However, the whole thing didn't work, as you can tell here:
>>> LinePlot
<class reportlab.graphics.charts.lineplots.LinePlot at 0x00D5B1B0>
>>> class timeseriesLinePlot(LinePlot):
def __init__(self):
LinePlot.__init__(self)
self.startdate = None
self.enddate = None
>>> ts = timeseriesLinePlot()
Traceback (most recent call last):
File "<pyshell#42>", line 1, in -toplevel-
ts = timeseriesLinePlot()
File "<pyshell#41>", line 4, in __init__
self.startdate = None
File "c:\python23\lib\reportlab\graphics\widgetbase.py", line 50, in
__setattr__
validateSetattr(self,name,value)
File "c:\python23\lib\reportlab\lib\attrmap.py", line 81, in
validateSetattr
raise AttributeError, "Illegal attribute '%s' in class %s" % (name,
obj.__class__.__name__)
AttributeError: Illegal attribute 'startdate' in class timeseriesLinePlot
>>>
What am I doing wrong? I just want to be able to set the start and dates
of my chart. as attributes of the chart itself.
I realize that this probably should occur at the xAxis level, rather than
at the lineplot level, but I'm going to worry about that issue later.