Die Klassen zum Erzeugen von Kreis-Diagrammen unterscheiden sich zum Teil grundlegend von den Klassen, die im vorangegangenen Kapitel eingesetzt wurden. Das liegt u.a. daran, dass der Entwickler Fabien Bodard die Style-Klassen so umgestaltet hat, dass die Stil-Anweisungen aus einer CSS-Datei ausgelesen werden. Auch die Komponente gb.report2 verwendet diese Art der Style-Definitionen konsequent.
Die Daten in der folgenden Tabelle sollen in einem Kreis-Diagramm dargestellt werden, wobei die Anzeige der 6 Werte in Prozent erfolgen soll:
Zeit/Monat | January | February | March | April | May | June |
---|---|---|---|---|---|---|
Wert | 3.3 | 4.11 | 3.0 | 4.2 | 5.1 | 5.7 |
Tabelle 23.8.3.1.1: Zeit-Wert-Tabelle
Abbildung 23.8.3.1.1: Kreis-Diagramm
Das ist der vollständige, hinreichend kommentierte Quelltext für ein Kreis-Diagramm mit 6 Werten:
' Gambas class file Private hChart As New Chart Private aData As Float[] Private Enum Left, Right, Top, Bottom ' 0=Left, 1=Right, 2=Top, 3=Bottom Public Sub Form_Open() FPieChart.Center() '-- Setting the 6 chart values in a float array aData = [3.3, 4.11, 3.0, 4.2, 5.1, 5.7] hChart.Datas = [ChartDatas(aData)] '-- Definition of the colors for the circle sectors - the default colors are overwritten hChart.Colors = [&Hff6f00, &H800080, &H666666, &H6B4794, &H290099, &H7da647] hChart.Title = "Presentation of a pie chart with 6 values" hChart.ShowTitle = True '-- Setting the identifiers for the circle sectors and for the legend hChart.Labels = ["January", "February", "March", "April", "May", "June"] '-- Display of the identifiers for the circle sectors hChart.Type.ShowLabel = True '-- Show chart values hChart.Type.ShowValues = True hChart.Type.Percentage = True '-- Chart legend hChart.LegendTitle = "Legend" '-- See definition 'Enumeration' hChart.LegendeSide = Right hChart.ShowLegend = True DrawingArea1.Refresh() End Public Sub DrawingArea1_Draw() hChart.Paint(RectF(0, 0, Paint.W, Paint.H)) End
Hinweise: