Creates an rgl 3D scene from a brain atlas. Uses the same atlas preparation pipeline as [ggseg3d()] but outputs to rgl instead of htmlwidgets. The resulting scene can be piped into [pan_camera()], [add_glassbrain()], and [set_background()], then rendered with rayshader's `render_highquality()` or captured with `rgl::snapshot3d()`.
ggsegray(
.data = NULL,
atlas = dk(),
label_by = "region",
text_by = NULL,
colour_by = "colour",
palette = NULL,
na_colour = "darkgrey",
na_alpha = 1,
material = list(),
...,
label = deprecated(),
text = deprecated(),
colour = deprecated()
)An object of class `ggsegray` (invisibly), which wraps the rgl device ID. Pipe into [pan_camera()], [add_glassbrain()], or [set_background()] to modify the scene.
A data.frame to use for plot aesthetics. Must include a column called "region" corresponding to regions.
A `ggseg_atlas` object containing 3D vertex mappings, or a string naming an atlas function (deprecated).
String. Column name used as hover label for each region.
String. Column name for extra hover text shown below the region label.
String. Column name mapped to mesh colours.
String. Vector of colour names or HEX colours. Can also be a named numeric vector, with colours as names, and breakpoint for that colour as the value
String. Either name, hex of RGB for colour of NA in colour.
Numeric. A number between 0 and 1 to control transparency of NA-regions.
Named list of rgl material properties passed to [rgl::tmesh3d()]. Controls how the mesh surface is shaded.
Type-specific arguments passed to the atlas method. See section **Type-specific arguments** below.
`r lifecycle::badge("deprecated")` Use `label_by`, `text_by`, and `colour_by` instead.
Useful material list entries:
`"black"` (matte) or `"white"` (glossy).
Specular exponent. Higher = tighter highlights.
`FALSE` disables lighting.
Transparency, 0 (invisible) to 1 (opaque).
`TRUE` for Gouraud shading, `FALSE` for flat.
See [rgl::material3d()] for the full list.
Cortical atlases (`cortical_atlas`):
Surface type: `"LCBC"` (default, alias for inflated), `"inflated"`, `"semi-inflated"`, `"white"`, `"pial"`.
Character vector of hemispheres: `"right"`, `"left"`.
Column name for region boundary edges.
Custom brain mesh data.
Tract atlases (`tract_atlas`):
`"palette"` (default) or `"orientation"` (direction-based RGB).
Tube radius (numeric, default 5).
Tube segment count (integer, default 8).
if (FALSE) {
ggsegray(hemisphere = "left") |>
pan_camera("left lateral")
ggsegray(atlas = aseg()) |>
add_glassbrain(opacity = 0.15) |>
pan_camera("right lateral") |>
set_background("black")
}
Run the code above in your browser using DataLab