Platforms to show: All Mac Windows Linux Cross-Platform

Required plugins for this example: MBS ChartDirector Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /ChartDirector/smallsectorpie
This example is the version from Sun, 17th Mar 2012.
Project "smallsectorpie.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
End Class
Class PicWindow Inherits Window
EventHandler Sub Open() // The data for the pie chart dim data(-1) as double = array(35.0, 30, 25, 7, 6, 5, 4, 3, 2, 1) // The labels for the pie chart dim labels(-1) as string= array("Labor", "Production", "Facilities", "Taxes", "Misc", "Legal", "Insurance", "Licenses", "Transport", "Interest") // Create a PieChart object of size 560 x 270 pixels, with a golden background // and a 1 pixel 3D border dim c as new CDPieChartMBS(560, 270, CDPieChartMBS.goldColor, -1, 1) // Add a title box using 15 pts Times Bold Italic font and metallic pink // background color dim t as CDTextBoxMBS t=c.addTitle("Project Cost Breakdown", "timesbi.ttf", 15) t.setBackground(c.metalColor(&hff9999)) // Set the center of the pie at (280, 135) and the radius to 110 pixels c.setPieSize(280, 135, 110) // alternative a donut: 'c.setDonutSize(280, 140, 110, 55) // Draw the pie in 3D with 20 pixels 3D depth c.set3D(20) // Use the side label layout method c.setLabelLayout(c.kSideLayout) // Set the label box background color the same as the sector color, with glass // effect, and with 5 pixels rounded corners t = c.setLabelStyle t.setBackground(c.kSameAsMainColor, c.kTransparent, c.glassEffect()) t.setRoundedCorners(5) // Set the border color of the sector the same color as the fill color. Set the // line color of the join line to black (0x0) c.setLineColor(c.kSameAsMainColor, &h000000) // Set the start angle to 135 degrees may improve layout when there are many // small sectors at the end of the data array (that is, data sorted in descending // order). It is because this makes the small sectors position near the // horizontal axis, where the text label has the least tendency to overlap. For // data sorted in ascending order, a start angle of 45 degrees can be used // instead. c.setStartAngle(135) // Set the pie data and the pie labels c.setdata(data, labels) Backdrop=c.MakeChartPicture End EventHandler
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
End Project

See also:

Feedback, Comments & Corrections

The items on this page are in the following plugins: MBS ChartDirector Plugin.

The biggest plugin in space...

MBS Xojo Chart Plugins

Start Chat