Example: /ChartDirector/surface retina

Online Documentation   -   Statistics   -   FAQ   -   Plugin Parts (All, Dependencies)   -   Class hierarchy

New in Version 22.2 22.3 22.4 22.5 23.0 23.1 23.2 23.3 23.4 23.5 24.0 24.1

The list of the   topics,   classes,   interfaces,   controls,   modules,   global methods by category,   global methods by name,   screenshots,   licenses   and   examples.

Platforms to show: All Mac Windows Linux Cross-Platform

/ChartDirector/surface retina


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/surface retina

This example is the version from Mon, 9th Mar 2014.

Project "surface retina.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
End Class
Class Window1 Inherits Window
EventHandler Sub Open() // The x and y coordinates of the grid dim dataX(-1) as double = array(-10.0, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10) dim dataY(-1) as double = array(-10.0, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10) // The values at the grid points. In this example, we will compute the values // using the formula z = x * sin(y) + y * sin(x). dim dataZ(21*21-1) as Double for yIndex as integer = 0 to UBound(datay) dim y as double = dataY(yIndex) for xIndex as integer = 0 to UBound(datax) dim x as double = dataX(xIndex) dataZ(yIndex * 21 + xIndex) = x * sin(y) + y * sin(x) next next const f = 2 // Create a SurfaceChart object of size 720 x 600 pixels dim c as new CDSurfaceChartMBS(720*f, 600*f) // Add a title to the chart using 20 points Times New Roman Italic font call c.addTitle("Surface Energy Density ", "timesi.ttf", 20*f) // Set the center of the plot region at (350, 280), and set width x depth x // height to 360 x 360 x 270 pixels c.setPlotRegion(350*f, 280*f, 360*f, 360*f, 270*f) // Set the data to use to plot the chart c.setData(dataX, dataY, dataZ) // Spline interpolate data to a 80 x 80 grid for a smooth surface c.setInterpolation(80*f, 80*f) // Add a color axis (the legend) in which the left center is anchored at (645, // 270). Set the length to 200 pixels and the labels on the right side. dim ca as CDColorAxisMBS = c.setColorAxis(645*f, 270*f, c.kLeft, 200*f, c.kRight) call ca.setLabelStyle "", 8*f call ca.setwidth(15*f) c.setWallThickness(10*f) 'call ca.setLinearScale -20.0, 20.0, 5 // Set the x, y and z axis titles using 10 points Arial Bold font call c.xAxis.setTitle("X (nm)", "arialbd.ttf", 10*f) call c.yAxis.setTitle("Y (nm)", "arialbd.ttf", 10*f) call c.zAxis.setTitle("Energy Density (J/m<*font,super*>2<*/font*>)", "arialbd.ttf", 10*f) c.xAxis.setLinearScale -10, 10, 5, 1 c.yAxis.setLinearScale -10, 10, 5, 1 c.zAxis.setLinearScale -20, 20, 5, 5 call c.xAxis.setLabelStyle "", 8*f call c.yAxis.setLabelStyle "", 8*f call c.zAxis.setLabelStyle "", 8*f // Output the chart pic = c.makechartPicture End EventHandler
EventHandler Sub Paint(g As Graphics, areas() As REALbasic.Rect) // draw in window. g.DrawPicture pic, 0, 0, g.Width, g.Height, 0, 0, pic.Width, pic.Height End EventHandler
Property pic As Picture
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
SetRetina
End SetRetina
End Project

See also:

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


💬 Ask a question or report a problem