[reportlab-users] color individual bars
Dirk Datzert
reportlab-users@reportlab.com
Fri, 26 Jul 2002 23:08:38 +0200
Hi all,
I read thru the mail-archive of this month and found several article
about coloring bars. My intention is to color each bar with an
individual color. Context from the mail-archive was that it should be
possible, but I walked thru the examples and the barcharts.py while
I thing it won't work as expected.
from makeBars:
lenData = len(self.data)
reversePlotOrder = self.reversePlotOrder
for rowNo in range(lenData):
if reversePlotOrder: rowNo = lenData-1 - rowNo
row = self._barPositions[rowNo]
styleCount = len(self.bars)
styleIdx = rowNo % styleCount
rowStyle = self.bars[styleIdx]
for colNo in range(len(row)):
barPos = row[colNo]
lenData is the count of data rows
rowNo is the current number of data row which is drawn
styleCount is the count of bars definition
If lenData is 1, and in the one row are the data it is impossible to
color
each bar with an individual color since styleIdx will always be 0 and
rowStyle will always be self.bars[0] -> All bars will be the same color!
On the other way I found that each barLabel can be individual defined
since self.barLabels[(rowNo, colNo)] will be defined for each row and
column.
I thing that something like bars[(rowNo, colNo)] should be implemented
in the BarChart or in a derived class, if really individual bar colors
should be useable.
Does anybody agree with this ?
Regards,
Dirk