render_drake_graph {drake}R Documentation

Render a visualization using the data frames generated by drake_graph_info(). [Stable]

Description

This function is called inside vis_drake_graph(), which typical users call more often.

Usage

render_drake_graph(
  graph_info,
  file = character(0),
  layout = NULL,
  direction = NULL,
  hover = TRUE,
  main = graph_info$default_title,
  selfcontained = FALSE,
  navigationButtons = TRUE,
  ncol_legend = 1,
  collapse = TRUE,
  on_select = NULL,
  level_separation = NULL,
  ...
)

Arguments

graph_info

List of data frames generated by drake_graph_info(). There should be 3 data frames: nodes, edges, and legend_nodes.

file

Name of a file to save the graph. If NULL or character(0), no file is saved and the graph is rendered and displayed within R. If the file ends in a .png, .jpg, .jpeg, or .pdf extension, then a static image will be saved. In this case, the webshot package and PhantomJS are required: install.packages("webshot"); webshot::install_phantomjs(). If the file does not end in a .png, .jpg, .jpeg, or .pdf extension, an HTML file will be saved, and you can open the interactive graph using a web browser.

layout

Deprecated.

direction

Deprecated.

hover

Logical, whether to show the command that generated the target when you hover over a node with the mouse. For imports, the label does not change with hovering.

main

Character string, title of the graph.

selfcontained

Logical, whether to save the file as a self-contained HTML file (with external resources base64 encoded) or a file with external resources placed in an adjacent directory. If TRUE, pandoc is required. The selfcontained argument only applies to HTML files. In other words, if file is a PNG, PDF, or JPEG file, for instance, the point is moot.

navigationButtons

Logical, whether to add navigation buttons with visNetwork::visInteraction(navigationButtons = TRUE)

ncol_legend

Number of columns in the legend nodes. To remove the legend entirely, set ncol_legend to NULL or 0.

collapse

Logical, whether to allow nodes to collapse if you double click on them. Analogous to visNetwork::visOptions(collapse = TRUE).

on_select

defines node selection event handling. Either a string of valid JavaScript that may be passed to visNetwork::visEvents(), or one of the following: TRUE, NULL/FALSE. If TRUE , enables the default behavior of opening the link specified by the on_select_col given to drake_graph_info(). NULL/FALSE disables the behavior.

level_separation

Numeric, levelSeparation argument to visNetwork::visHierarchicalLayout(). Controls the distance between hierarchical levels. Consider setting if the aspect ratio of the graph is far from 1. Defaults to 150 through visNetwork.

...

Arguments passed to visNetwork().

Details

For enhanced interactivity in the graph, see the mandrake package: https://github.com/matthewstrasiotto/mandrake.

Value

A visNetwork graph.

See Also

vis_drake_graph(), sankey_drake_graph(), drake_ggraph()

Examples

## Not run: 
isolate_example("Quarantine side effects.", {
if (suppressWarnings(require("knitr"))) {
load_mtcars_example() # Get the code with drake_example("mtcars").
if (requireNamespace("visNetwork", quietly = TRUE)) {
# Instead of jumping right to vis_drake_graph(), get the data frames
# of nodes, edges, and legend nodes.
vis_drake_graph(my_plan) # Jump straight to the interactive graph.
# Get the node and edge info that vis_drake_graph() just plotted:
graph <- drake_graph_info(my_plan)
# You can pass the data frames right to render_drake_graph()
# (as in vis_drake_graph()) or you can create
# your own custom visNewtork graph.
render_drake_graph(graph)
}
}
})

## End(Not run)

[Package drake version 7.13.2 Index]