R: Show edges as a density map

geom_edge_density {ggraph} | R Documentation

## Show edges as a density map

### Description

This geom makes it possible to add a layer showing edge presence as a density map. Each edge is converted to `n` points along the line and a jitter is applied. Based on this dataset a two-dimensional kernel density estimation is applied and plotted as a raster image. The density is mapped to the alpha level, making it possible to map a variable to the fill.

### Usage

    geom_edge_density(mapping = NULL, data = get_edges("short"),
      position = "identity", show.legend = NA, n = 100, ...)

### Arguments

`mapping` | Set of aesthetic mappings created by `aes` or `aes_`. By default x, y, xend, yend, group and circular are mapped to x, y, xend, yend, edge.id and circular in the edge data.
`data` | The return of a call to `get_edges()` or a data.frame giving edges in corrent format (see details for for guidance on the format). See `get_edges` for more details on edge extraction.
`position` | Position adjustment, either as a string, or the result of a call to a position adjustment function.
`show.legend` | logical. Should this layer be included in the legends? `NA`, the default, includes if any aesthetics are mapped. `FALSE` never includes, and `TRUE` always includes. It can also be a named logical vector to finely select the aesthetics to display.
`n` | The number of points to estimate in the x and y direction, i.e. the resolution of the raster.
`...` | Other arguments passed on to `layer()`. These are often aesthetics, used to set an aesthetic to a fixed value, like `color = "red"` or `size = 3`. They may also be parameters to the paired geom/stat.

### Aesthetics

geom_edge_density understand the following aesthetics. Bold aesthetics are automatically set, but can be overridden.

- x

- y

- xend

- yend

- edge_fill

- filter

### Computed variables

x, y

  The coordinates for each pixel in the raster

density

  The density associated with the pixel

### Note

In order to avoid excessive typing edge aesthetic names are automatically expanded. Because of this it is not necessary to write `edge_colour` within the `aes()` call as `colour` will automatically be renamed appropriately.

### Author(s)

Thomas Lin Pedersen

### See Also

Other geom_edge_*: `geom_edge_arc`, `geom_edge_diagonal`, `geom_edge_elbow`, `geom_edge_fan`, `geom_edge_hive`, `geom_edge_link`, `geom_edge_loop`

### Examples

    require(igraph)
    gr <- make_graph('bull')
    E(gr)$class <- sample(letters[1:3], gsize(gr), replace = TRUE)

    ggraph(gr, 'igraph', algorithm = 'nicely') +
      geom_edge_density(aes(fill = class)) +
      geom_edge_link() + geom_node_point()

[Package ggraph version 1.0.2 Index]