1
#Autogenerated by ReportLab guiedit do not edit
2
from reportlab.graphics.charts.legends import Legend
3
from reportlab.graphics.charts.lineplots import ScatterPlot
4
from reportlab.graphics.shapes import Drawing, _DrawingEditorMixin, String
5
from reportlab.graphics.charts.textlabels import Label
6
from excelcolors import *
8
class Bubble(_DrawingEditorMixin,Drawing):
9
def __init__(self,width=200,height=150,*args,**kw):
10
apply(Drawing.__init__,(self,width,height)+args,kw)
11
self._add(self,ScatterPlot(),name='chart',validate=None,desc="The main chart")
12
self.chart.width = 115
13
self.chart.height = 80
16
self.chart.lines[0].strokeColor = color01
17
self.chart.lines[1].strokeColor = color02
18
self.chart.lines[2].strokeColor = color03
19
self.chart.lines[3].strokeColor = color04
20
self.chart.lines[4].strokeColor = color05
21
self.chart.lines[5].strokeColor = color06
22
self.chart.lines[6].strokeColor = color07
23
self.chart.lines[7].strokeColor = color08
24
self.chart.lines[8].strokeColor = color09
25
self.chart.lines[9].strokeColor = color10
26
self.chart.lines.symbol.kind ='Circle'
27
self.chart.lines.symbol.size = 15
28
self.chart.fillColor = backgroundGrey
29
self.chart.lineLabels.fontName = 'Helvetica'
30
self.chart.xValueAxis.labels.fontName = 'Helvetica'
31
self.chart.xValueAxis.labels.fontSize = 7
32
self.chart.xValueAxis.forceZero = 0
33
self.chart.data = [((100,100), (200,200), (250,210), (300,300), (350,450))]
34
self.chart.xValueAxis.avoidBoundFrac = 1
35
self.chart.xValueAxis.gridEnd = 115
36
self.chart.xValueAxis.tickDown = 3
37
self.chart.xValueAxis.visibleGrid = 1
38
self.chart.yValueAxis.tickLeft = 3
39
self.chart.yValueAxis.labels.fontName = 'Helvetica'
40
self.chart.yValueAxis.labels.fontSize = 7
41
self._add(self,Label(),name='Title',validate=None,desc="The title at the top of the chart")
42
self.Title.fontName = 'Helvetica-Bold'
43
self.Title.fontSize = 7
46
self.Title._text = 'Chart Title'
47
self.Title.maxWidth = 180
48
self.Title.height = 20
49
self.Title.textAnchor ='middle'
50
self._add(self,Legend(),name='Legend',validate=None,desc="The legend or key for the chart")
51
self.Legend.colorNamePairs = [(color01, 'Widgets')]
52
self.Legend.fontName = 'Helvetica'
53
self.Legend.fontSize = 7
56
self.Legend.dxTextSpace = 5
59
self.Legend.deltay = 5
60
self.Legend.alignment ='right'
61
self.chart.lineLabelFormat = None
62
self.chart.xLabel = 'X Axis'
64
self.chart.yLabel = 'Y Axis'
65
self.chart.yValueAxis.labelTextFormat = '%d'
66
self.chart.yValueAxis.forceZero = 1
67
self.chart.xValueAxis.forceZero = 1
70
self._add(self,0,name='preview',validate=None,desc=None)
72
if __name__=="__main__": #NORUNTESTS
73
Bubble().save(formats=['pdf'],outDir=None,fnRoot='bubble')