R: Plot a LAS* object

plot {lidR} | R Documentation

## Plot a LAS* object

### Description

Plot displays a 3D interactive windows-based on rgl for LAS objects
Plot displays an interactive view for LAScatalog objects with pan and zoom capabilities based on mapview. If the coordinate reference system (CRS) of the `LAScatalog` is non empty, the plot can be displayed on top of base maps (satellite data, elevation, street, and so on).
Plot displays a LASheader object exactly like it displays a LAScatalog object.

### Usage

    plot(x, y, ...)

    ## S4 method for signature 'LAS,missing'
    plot(
      x,
      y,
      color = "Z",
      colorPalette = "auto",
      bg = "black",
      trim = Inf,
      backend = "rgl",
      clear_artifacts = TRUE,
      nbits = 16,
      axis = FALSE,
      legend = FALSE,
      add = FALSE,
      voxel = FALSE,
      ...
    )

    ## S4 method for signature 'LAScatalog,missing'
    plot(x, y, mapview = FALSE, chunk_pattern = FALSE, overlaps = FALSE, ...)

    ## S4 method for signature 'LASheader,missing'
    plot(x, y, mapview = FALSE, ...)

### Arguments

`x` | A `LAS*` object
`y` | Unused (inherited from R base)
`...` | Will be passed to points3d (LAS) or plot if `mapview = FALSE` or to mapview if `mapview = TRUE` (LAScatalog).
`color` | characters. The attribute used to color the point cloud. Default is Z coordinates. RGB is an allowed string even if it refers to three attributes simultaneously.
`colorPalette` | characters. A vector of colors such as that generated by heat.colors, topo.colors, terrain.colors or similar functions. Default is `"auto"` providing an automatic coloring depending on the argument `color`
`bg` | The color for the background. Default is black.
`trim` | numeric. Enables trimming of values when outliers break the color palette range. Every point with a value higher than `trim` will be plotted with the highest color.
`backend` | character. Can be `"rgl"` or `"lidRviewer"`. If `"rgl"` is chosen the display relies on the `rgl` package. If `"lidRviewer"` is chosen it relies on the `lidRviewer` package, which is much more efficient and can handle million of points using less memory. `lidRviewer` is not available on CRAN yet and should be installed from github (see. https://github.com/Jean-Romain/lidRviewer).
`clear_artifacts` | logical. It is a known and documented issue that the 3D visualisation with `rgl` displays artifacts. The points look aligned and/or regularly spaced in some view angles. This is because `rgl` computes with single precision `float`. To fix that the point cloud is shifted to (0,0) to reduce the number of digits needed to represent its coordinates. The drawback is that the point cloud is not plotted at its actual coordinates.
`nbits` | integer. If `color = RGB` it assumes that RGB colours are coded on 16 bits as described in the LAS format specification. However, this is not always respected. If the colors are stored on 8 bits, set this parameter to 8.
`axis` | logical. Display axis on XYZ coordinates.
`legend` | logical. Display a gradient colour legend.
`add` | If `FALSE` normal behaviour otherwise must be the output of a prior plot function to enable the alignment of a second point cloud.
`voxel` | boolean or numeric. Displays voxels instead of points. Useful to render the output of voxelize_points, for example. However it is computationally demanding to render and can easily take 15 seconds for 10000 voxels. It should be reserved for small scenes. If boolean the voxel resolution is guessed automatically. Otherwise users can provide the size of the voxels. To reduce the rendering time, an internal optimization removes voxels that are not visible when surrounded by other voxels.
`mapview` | logical. If `FALSE` the catalog is displayed in a regular plot from R base.
`chunk_pattern` | logical. Display the current chunk pattern used to process the catalog.
`overlaps` | logical. Highlight the overlaps between files.

### Examples

    ## Not run:
    LASfile <- system.file("extdata", "MixedConifer.laz", package="lidR")
    las <- readLAS(LASfile)

    plot(las)
    plot(las, color = "Intensity")

    # If outliers break the color range, use the trim parameter
    plot(las, color = "Intensity", trim = 150)

    plot(las, color = "Classification")

    # This dataset is already tree segmented
    plot(las, color = "treeID")

    # single file LAScatalog using data provided in lidR
    ctg = readLAScatalog(LASfile)
    plot(ctg)
    plot(ctg, map = T, map.types = "Esri.WorldImagery")

    ## End(Not run)

[Package lidR version 3.2.2 Index]