Skip to contents

node_instrumental tags instrumental variables given an exposure and outcome. ggdag_instrumental plots all instrumental variables. See dagitty::instrumentalVariables() for details.

Usage

node_instrumental(.dag, exposure = NULL, outcome = NULL, ...)

ggdag_instrumental(
  .tdy_dag,
  exposure = NULL,
  outcome = NULL,
  ...,
  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 = 10,
  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 or dagitty

exposure

character vector of length 1, name of exposure variable. Default is NULL, in which case it will check the input DAG for exposure.

outcome

character vector of length 1, name of exposure variable. Default is NULL, in which case it will check the input DAG for exposure.

...

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? If TRUE, which is determined by edge_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(). If use_text = TRUE, the default is to use name.

label

The bare name of a column to use for geom_dag_label_repel(). If use_labels = TRUE, the default is to use label.

node

Deprecated.

stylized

Deprecated.

Value

a tidy_dagitty with an instrumental column for instrumental variables or a ggplot

Examples

library(dagitty)

node_instrumental(dagitty("dag{ i->x->y; x<->y }"), "x", "y")
#> # A DAG with 3 nodes and 3 edges
#> #
#> # A tibble: 4 × 10
#>   name        x      y direction to       xend   yend circular instrumental_name
#>   <chr>   <dbl>  <dbl> <fct>     <chr>   <dbl>  <dbl> <lgl>    <chr>            
#> 1 i      0.408   1.62  ->        x     -0.0720  0.557 FALSE    i                
#> 2 x     -0.0720  0.557 ->        y     -0.439  -0.255 FALSE    i                
#> 3 x     -0.0720  0.557 <->       y     -0.439  -0.255 FALSE    i                
#> 4 y     -0.439  -0.255 NA        NA    NA      NA     FALSE    i                
#> # ℹ 1 more variable: instrumental <chr>
ggdag_instrumental(dagitty("dag{ i->x->y; i2->x->y; x<->y }"), "x", "y")