3D real-time rendering system.
RGL is a 3D real-time rendering system for R.
Multiple windows are managed at a time. Windows
may be divided into “subscenes”, where one has the current focus
that receives instructions from the R command-line.
The device design is oriented towards the R device metaphor. If you send
scene management instructions, and there's no device open, it will be opened
Opened devices automatically get the current device focus. The focus may be
changed by using
rgl provides medium to high level functions for 3D interactive graphics, including
functions modelled on base graphics (
plot3d(), etc.) as well as functions for
constructing geometric objects (
cube3d(), etc.). Output
may be on screen using OpenGL, or to various standard 3D file formats including
WebGL, PLY, OBJ, STL as well as 2D image formats, including PNG, Postscript, SVG, PGF.
open3d() function attempts to open a new RGL window,
using default settings specified by the user.
rgl also includes a lower level interface which is described
in the rgl.open help topic. We recommend that you avoid mixing
See the first example below to display the ChangeLog.
r3d for a description of the
par3d for a description of scene properties and the rendering
rgl.useNULL for a description of how to
use rgl on a system with no graphics support.
1 2 3
Warning messages: 1: In rgl.init(initValue, onlyNULL) : RGL: unable to open X11 display 2: 'rgl.init' failed, running with 'rgl.useNULL = TRUE'. /usr/lib/R/bin/pager: line 11: /usr/bin/pager: Permission denied /usr/lib/R/bin/pager: line 11: /usr/bin/pager: Success srfc3d> # srfc3d> # volcano example taken from "persp" srfc3d> # srfc3d> srfc3d> data(volcano) srfc3d> z <- 2 * volcano # Exaggerate the relief srfc3d> x <- 10 * (1:nrow(z)) # 10 meter spacing (S to N) srfc3d> y <- 10 * (1:ncol(z)) # 10 meter spacing (E to W) srfc3d> zlim <- range(z) srfc3d> zlen <- zlim - zlim + 1 srfc3d> colorlut <- terrain.colors(zlen) # height color lookup table srfc3d> col <- colorlut[ z - zlim + 1 ] # assign colors to heights for each point srfc3d> open3d() null 1 srfc3d> surface3d(x, y, z, color = col, back = "lines") plot3d> open3d() null 2 plot3d> x <- sort(rnorm(1000)) plot3d> y <- rnorm(1000) plot3d> z <- rnorm(1000) + atan2(x, y) plot3d> plot3d(x, y, z, col = rainbow(1000))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.