Detects any colliders given a DAG.
node_collider
tags colliders and ggdag_collider
plots all
exogenous variables.
Usage
node_collider(.dag, as_factor = TRUE, ...)
ggdag_collider(
.tdy_dag,
...,
size = 1,
edge_type = c("link_arc", "link", "arc", "diagonal"),
node_size = 16,
text_size = 3.88,
label_size = text_size,
text_col = "white",
label_col = "black",
edge_width = 0.6,
edge_cap = 8,
arrow_length = 5,
use_edges = TRUE,
use_nodes = TRUE,
use_stylized = FALSE,
use_text = TRUE,
use_labels = FALSE,
text = NULL,
label = NULL,
node = deprecated(),
stylized = deprecated()
)
Arguments
- .dag, .tdy_dag
input graph, an object of class
tidy_dagitty
ordagitty
- as_factor
treat
collider
variable as factor- ...
additional arguments passed to
tidy_dagitty()
- size
A numeric value scaling the size of all elements in the DAG. This allows you to change the scale of the DAG without changing the proportions.
- edge_type
The type of edge, one of "link_arc", "link", "arc", "diagonal".
- node_size
The size of the nodes.
- text_size
The size of the text.
- label_size
The size of the labels.
- text_col
The color of the text.
- label_col
The color of the labels.
- edge_width
The width of the edges.
- edge_cap
The size of edge caps (the distance between the arrowheads and the node borders).
- arrow_length
The length of arrows on edges.
- use_edges
A logical value. Include a
geom_dag_edges*()
function? IfTRUE
, which is determined byedge_type
.- use_nodes
A logical value. Include
geom_dag_point()
?- use_stylized
A logical value. Include
geom_dag_node()
?- use_text
A logical value. Include
geom_dag_text()
?- use_labels
A logical value. Include
geom_dag_label_repel()
?- text
The bare name of a column to use for
geom_dag_text()
. Ifuse_text = TRUE
, the default is to usename
.- label
The bare name of a column to use for
geom_dag_label_repel()
. Ifuse_labels = TRUE
, the default is to uselabel
.- node
Deprecated.
- stylized
Deprecated.
Examples
dag <- dagify(m ~ x + y, y ~ x)
node_collider(dag)
#> # DAG:
#> # A `dagitty` DAG with: 3 nodes and 3 edges
#> #
#> # Data:
#> # A tibble: 4 × 8
#> name x y direction to xend yend colliders
#> <chr> <dbl> <dbl> <fct> <chr> <dbl> <dbl> <fct>
#> 1 m -0.153 0.0929 NA NA NA NA Collider
#> 2 x -0.374 1.07 -> m -0.153 0.0929 Non-Collider
#> 3 x -0.374 1.07 -> y -1.11 0.388 Non-Collider
#> 4 y -1.11 0.388 -> m -0.153 0.0929 Non-Collider
#> #
#> # ℹ Use `pull_dag() (`?pull_dag`)` to retrieve the DAG object and `pull_dag_data() (`?pull_dag_data`)` for the data frame
ggdag_collider(dag)