Learn R Programming

⚠️There's a newer version (1.0.11) of this package.Take me there.

DiagrammeR (version 1.0.9)

Graph/Network Visualization

Description

Build graph/network structures using functions for stepwise addition and deletion of nodes and edges. Work with data available in tables for bulk addition of nodes, edges, and associated metadata. Use graph selections and traversals to apply changes to specific nodes or edges. A wide selection of graph algorithms allow for the analysis of graphs. Visualize the graphs and take advantage of any aesthetic properties assigned to nodes and edges.

Copy Link

Version

Install

install.packages('DiagrammeR')

Monthly Downloads

34,018

Version

1.0.9

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Last Published

March 5th, 2022

Functions in DiagrammeR (1.0.9)

add_forward_edges_ws

Add new edges with identical definitions as with a selection of edges
add_edges_w_string

Add one or more edges using a text string
add_edge

Add an edge between nodes in a graph object
add_edge_df

Add edges from an edge data frame to an existing graph object
DiagrammeR

R + mermaid.js
add_edges_from_table

Add edges and attributes to graph from a table
DiagrammeROutput

Widget output function for use in Shiny
add_cycle

Add a cycle of nodes to the graph
add_edge_clone

Add a clone of an existing edge to the graph
add_balanced_tree

Add a balanced tree to the graph
add_graph_action

Add a graph action for execution at every transform
add_pa_graph

Add a preferential attachment graph
add_nodes_from_table

Add nodes and attributes to graph from a table
clear_selection

Clear an active selection of nodes or edges
add_star

Add a star of nodes to the graph
add_global_graph_attrs

Add one or more global graph attributes
add_node_df

Add nodes from a node data frame to an existing graph object
add_nodes_from_df_cols

Add nodes from distinct values in data frame columns
combine_edfs

Combine multiple edge data frames into a single edge data frame
add_full_graph

Add a fully connected graph
combine_graphs

Combine two graphs into a single graph
add_gnm_graph

Add a G(n, m) Erdos-Renyi graph
add_graph_to_graph_series

Add graph object to a graph series object
add_gnp_graph

Add a G(n, p) Erdos-Renyi graph
count_mutual_node_pairs

Get the number of mutually-connected node pairs
add_growing_graph

Create a random growing graph with m edges added per step
add_reverse_edges_ws

Add new edges in the opposite directions of a selection of edges
add_smallworld_graph

Add a Watts-Strogatz small-world graph
combine_ndfs

Combine multiple node data frames
count_unconnected_nodes

Get count of all unconnected nodes
count_nodes

Get a count of all nodes
add_islands_graph

Create a random islands graph with edges between the islands
copy_edge_attrs

Copy an edge attribute column and set the name
add_mathjax

Add MathJax-formatted equation text
add_n_node_clones

Add one or several clones of an existing node to the graph
add_node

Add a node to an existing graph object
delete_edge

Delete an edge from an existing graph object
currencies

ISO-4217 currency data.
count_w_connected_cmpts

Get the number of weakly-connected components
add_path

Add a path of nodes to the graph
add_grid_2d

Add a 2D grid of nodes to the graph
create_graph_series

Create a graph series object
add_grid_3d

Add a 3D grid of nodes to the graph
count_graphs_in_graph_series

Count graphs in a graph series object
count_loop_edges

Get count of all loop edges
add_n_nodes

Add one or several unconnected nodes to the graph
delete_edges_ws

Delete all selected edges in an edge selection
edge_list_1

Edge list - Version 1.
add_prism

Add a prism of nodes to the graph
add_node_clones_ws

Add clones of a selection of nodes
create_node_df

Create a node data frame
deselect_nodes

Deselect any selected nodes in a graph
display_metagraph

Display a property graph's underlying model
export_csv

Export a graph to CSV files
delete_cache

Delete vectors cached in a graph object
add_n_nodes_ws

Add a multiple of new nodes with edges to or from one or more selected nodes
edge_list_2

Edge list - Version 2.
count_automorphisms

Get the number of automorphisms
colorize_edge_attrs

Apply colors based on edge attribute values
get_adhesion

Get graph adhesion
create_edge_df

Create an edge data frame
export_graph

Export a graph to various image formats
fully_disconnect_nodes_ws

Fully disconnect all nodes in a selection of nodes
colorize_node_attrs

Apply colors based on node attribute values
generate_dot

Generate DOT code using a graph object
count_edges

Get a count of all edges
get_closeness

Get closeness centrality values
get_agg_degree_in

Get an aggregate value from the indegree of nodes
get_cache

Get a cached vector from a graph object
delete_loop_edges_ws

Delete all loop edges associated with a selection of nodes
count_s_connected_cmpts

Get the number of strongly-connected components
get_bridging

Get bridging scores
get_betweenness

Get betweenness centrality scores
get_graph_name

Get graph name
get_graph_log

Get the graph log information
copy_node_attrs

Copy a node attribute column and set the name
get_graph_series_info

Get information on a graph series
get_graph_time

Get the graph date-time or timezone
get_multiedge_count

Get the count of multiple edges
get_nbrs

Get all neighbors of one or more nodes
delete_node

Delete a node from an existing graph object
get_cmty_fast_greedy

Get community membership by modularity optimization
count_asymmetric_node_pairs

Get the number of asymmetrically-connected node pairs
delete_nodes_ws

Delete all nodes in a node selection
deselect_edges

Deselect any selected edges in a graph
edge_aes

Insert edge aesthetic attributes during edge creation
count_unconnected_node_pairs

Get the number of unconnected node pairs
drop_edge_attrs

Drop an edge attribute column
filter_graph_series

Subset a graph series object
drop_node_attrs

Drop a node attribute column
from_adj_matrix

Create a graph using an adjacency matrix
get_global_graph_attr_info

Get global graph attributes
get_cmty_l_eigenvec

Get community membership by leading eigenvector
get_edge_ids

Get a vector of edge ID values
get_edge_df_ws

Get the graph's edf filtered by a selection of edges
get_all_connected_nodes

Get all nodes connected to a specified node
edge_data

Insert edge data attributes during edge creation
get_alpha_centrality

Get the alpha centrality for all nodes
get_closeness_vitality

Get closeness vitality
get_cmty_edge_btwns

Get community membership by edge betweenness
get_common_nbrs

Get all common neighbors between two or more nodes
get_constraint

Get constraint scores for one or more graph nodes
get_graph_info

Get metrics for a graph
get_degree_total

Get total degree values for all nodes
get_degree_out

Get outdegree values for all nodes
get_graph_from_graph_series

Get a graph available in a series
get_non_nbrs

Get non-neighbors of a node in a graph
create_graph

Create a graph object
get_pagerank

Get the PageRank values for all nodes
get_s_connected_cmpts

Get nodes within strongly connected components
get_reciprocity

Get the graph reciprocity
get_agg_degree_out

Get an aggregate value from the outdegree of nodes
get_agg_degree_total

Get an aggregate value from the total degree of nodes
get_edge_count_w_multiedge

Get count of edge definitions where multiple edges occur
get_eigen_centrality

Get the eigen centrality for all nodes
get_degree_in

Get indegree values for all nodes
get_degree_histogram

Get histogram data for a graph's degree frequency
get_edge_df

Get an edge data frame from a graph
grViz

R + viz.js
invert_selection

Invert selection of nodes or edges in a graph
import_graph

Import a graph from various graph formats
delete_global_graph_attrs

Delete one of the global graph attributes stored within a graph object
get_girth

Get the graph girth
is_graph_simple

Is the graph a simple graph?
grVizOutput

Widget output function for use in Shiny
is_graph_undirected

Is the graph an undirected graph?
get_degree_distribution

Get total degree distribution data for a graph
get_coreness

Get coreness values for graph nodes
is_graph_directed

Is the graph a directed graph?
is_graph_empty

Is the graph empty?
get_mean_distance

Get the mean distance
get_max_eccentricity

Get the maximum graph eccentricity
node_data

Insert node data attributes during node creation
node_edge_aes_data

Options for node and edge aesthetics and data
get_graph_actions

Get information on any available graph actions
rename_node_attrs

Rename a node attribute
get_min_cut_between

Get the minimum cut between source and sink nodes
get_node_df

Get a node data frame from a graph
do_bfs

Use the breadth-first search (bfs) algorithm
delete_graph_actions

Delete one or more graph actions stored within a graph object
mermaid

R + mermaid.js
mutate_edge_attrs

Mutate a set of edge attribute values
renderDiagrammeR

Widget render function for use in Shiny
replace_in_spec

Razor-like template for diagram specification
get_edge_attrs

Get edge attribute values
get_min_eccentricity

Get the minimum graph eccentricity
do_dfs

Use the depth-first search (dfs) algorithm
get_edge_attrs_ws

Get edge attribute values from a selection of edges
get_last_edges_created

Get the last set of edges created in a graph
get_paths

Get paths from a specified node in a directed graph
get_node_df_ws

Get the graph's ndf filtered by a selection of nodes
get_jaccard_similarity

Get Jaccard similarity coefficient scores
get_successors

Get node IDs for successor nodes to the specified node
rescale_edge_attrs

Rescale numeric edge attribute values
is_graph_connected

Is the graph a connected graph?
get_periphery

Get nodes that form the graph periphery
select_edges

Select edges in a graph
get_w_connected_cmpts

Get all nodes associated with connected components
fully_connect_nodes_ws

Fully connect all nodes in a selection of nodes
get_authority_centrality

Get the authority scores for all nodes
get_articulation_points

Get articulation points
from_igraph

Convert an igraph graph to a DiagrammeR one
is_graph_dag

Is the graph a directed acyclic graph?
select_edges_by_edge_id

Select edges in a graph using edge ID values
set_node_attr_w_fcn

Set node attribute values with a graph function
is_edge_multiple

Is the edge a multiple edge?
join_edge_attrs

Join new edge attribute values using a data frame
is_edge_loop

Is the edge a loop edge?
is_property_graph

Is the graph a property graph?
set_node_attrs

Set node attribute values
get_cmty_louvain

Get community membership by Louvain optimization
mutate_node_attrs_ws

Mutate node attribute values for a selection of nodes
transform_to_min_spanning_tree

Get a minimum spanning tree subgraph
get_cmty_walktrap

Get community membership using the Walktrap method
get_edges

Get node IDs associated with edges
get_eccentricity

Get node eccentricities
get_dice_similarity

Get Dice similarity coefficient scores
get_node_ids

Get a vector of node ID values
get_edge_info

Get detailed information on edges
get_last_nodes_created

Get the last set of nodes created in a graph
get_leverage_centrality

Get leverage centrality
get_node_attrs

Get node attribute values
transform_to_subgraph_ws

Create a subgraph using a node or edge selection
trav_out_node

Traverse from one or more selected edges onto adjacent, outward nodes
nudge_node_positions_ws

Move layout positions of a selection of nodes
trav_out_until

Traverse outward node-by-node until stopping conditions are met
get_selection

Get the current selection available in a graph object
get_node_info

Get detailed information on nodes
get_similar_nbrs

Get neighboring nodes based on node attribute similarity
open_graph

Read a graph or graph series from disk
renderGrViz

Widget render function for use in Shiny
get_node_attrs_ws

Get node attribute values from a selection of nodes
get_predecessors

Get node IDs for predecessor nodes to the specified node
get_radiality

Get radiality centrality scores
join_node_attrs

Join new node attribute values using a data frame
is_node_present

Determine whether a specified node is present
is_graph_weighted

Is the graph a weighted graph?
remove_graph_from_graph_series

Remove a graph from a graph series
node_list_1

Node list - Version 1.
node_list_2

Node list - Version 2.
node_aes

Insert node aesthetic attributes during node creation
%>%

The magrittr pipe
set_graph_name

Set graph name
usd_exchange_rates

US Dollar exchange rates.
select_nodes_by_degree

Select nodes in the graph based on their degree values
trav_in

Traverse from one or more selected nodes onto adjacent, inward nodes
rename_edge_attrs

Rename an edge attribute
select_nodes_by_id

Select nodes in a graph by their ID values
trav_in_edge

Traverse from one or more selected nodes onto adjacent, inward edges
set_graph_time

Set graph date-time and timezone
visnetwork

Render graph with visNetwork
layout_nodes_w_string

Layout nodes using a text-based schematic
is_edge_mutual

Is the edge mutual with another edge?
print.dgr_graph

Print the graph to the terminal
mutate_edge_attrs_ws

Mutate edge attribute values for a selection of edges
rev_edge_dir_ws

Reverse the direction of selected edges in a graph using an edge selection
is_edge_present

Determine whether a specified edge is present
set_graph_undirected

Convert a directed graph to an undirected graph
select_last_nodes_created

Select the last set of nodes created in a graph
render_graph

Render the graph in various formats
trav_both

Traverse from one or more selected nodes onto neighboring nodes
select_nodes

Select nodes in a graph
set_node_attr_to_display

Set the node attribute values to be rendered
recode_edge_attrs

Recode a set of edge attribute values
mutate_node_attrs

Mutate a set of node attribute values
reorder_graph_actions

Reorder the stored series of graph actions
render_graph_from_graph_series

Render a graph available in a series
set_edge_attr_to_display

Set the edge attribute values to be rendered
select_last_edges_created

Select the last set of edges created in a graph
save_graph

Save a graph or graph series to disk
select_edges_by_node_id

Select edges in a graph using node ID values
trav_both_edge

Traverse from one or more selected nodes onto adjacent edges
trav_out

Traverse from one or more selected nodes onto adjacent, outward nodes
x11_hex

X11 colors and hexadecimal color values
trav_out_edge

Traverse from one or more selected nodes onto adjacent, outward edges
rev_edge_dir

Reverse the direction of all edges in a graph
set_cache

Cache a vector in the graph
rescale_node_attrs

Rescale numeric node attribute values
select_nodes_in_neighborhood

Select nodes based on a walk distance from a specified node
recode_node_attrs

Recode a set of node attribute values
set_edge_attrs

Set edge attribute values
trav_reverse_edge

Traverse to any reverse edges
set_edge_attrs_ws

Set edge attributes with an edge selection
transform_to_complement_graph

Create a complement of a graph
to_igraph

Convert a DiagrammeR graph to an igraph one
set_graph_directed

Convert an undirected graph to a directed graph
trigger_graph_actions

Trigger the execution of a series of graph actions
set_node_attrs_ws

Set node attributes with a node selection
trav_in_node

Traverse from one or more selected edges onto adjacent, inward nodes
trav_in_until

Traverse inward node-by-node until stopping conditions are met
set_node_position

Apply a layout position to a single node