在ReportLab VerticalBarChart中标记单个栏

时间:2011-12-21 16:48:02

标签: reportlab

我正在使用ReportLab VerticalBarChart生成条形图。我需要其中一个条(每次不同的条)与其余条不同,以指定它是“选择”值。

否则,我需要以某种方式标记它与其他条不同。

知道怎么做吗?

3 个答案:

答案 0 :(得分:5)

您需要使用序列来访问单个栏。下面的代码段设置第一个数据系列的第一个条形的颜色。

chart.bars[(0,0)].fillColor = colors.red

注意:只需通过索引值,例如chart.bars[0]将允许您访问整个第一个数据系列

答案 1 :(得分:2)

你想做

chart.bars.fillColor = some_colour

和特定的条形,其中x是表示数字的整数

chart.bars.fillColor[x] = special_colour

答案 2 :(得分:1)

Meitham的回答对我不起作用 - 似乎chart.bars.fillColor [0]颜色全部系列中的栏。当您在一个图表中有多个系列时,您可以通过Meitham的方法确定每个系列的颜色。

我最终做的是强调标签(ix是我需要挑出的参数的索引):

...
bc = VerticalBarChart()
...
bc.categoryAxis.labels[ix].fontName = 'Times-Bold'
bc.categoryAxis.labels[ix].fontSize = 15
bc.categoryAxis.labels[ix].angle = 30
bc.categoryAxis.labels[ix].dy = -15
drawing.add(bc)

您可以在reportlab用户手册中搜索。