sep: Determine Separation Between Nodes

View source: R/S05-dimensions_and_text.R

sepR Documentation

Determine Separation Between Nodes

Description

Determine the distance between x-axis or y-axis coordinates for two nodes in a path diagram.

Usage

sep(nodes, labels, dimension = "y-axis", desired = NULL)

Arguments

nodes

A list of lists, each list giving the x and y coordinates for the bottom, left, top, right and associated corners for a given node (e.g., see output of add_nodes or add_lines_of_text).

labels

Either...

  • A character vector of length 2, giving the names of the lists for the two nodes to compare;

  • A integer vector of length 2, giving the positions in the list of lists for the two nodes to compare.

dimension

The set of coordinates to compare between nodes, either 'x-axis' or 'y-axis'.

desired

An optional value specifying the desired distance between the two nodes; when provided, the function outputs the new x or y-axis coordinate needed for the second node to have the desired distance from the first node.

Examples

# Create simple path diagram
create_base_figure()
# Add nodes
nodes <- add_nodes(
  c( N1 = 'Node-01|x=.3|y=.7',
     N2 = 'Node-02|x=.7|y=.3' ),
  output = TRUE )

# Distance from bottom of node 'N1'
# and top of node 'N2'
sep( nodes, c( 'N1', 'N2' ) )

# Determine new y-axis coordinate for 'N2' so
# that distance between nodes would be 0.1
sep( nodes, c( 'N1', 'N2' ), desired = .1 )[2]
# Add new node using proposed y-axis coordinate
add_nodes( c( N3 = 'Node-03|x=.3|y=.534' ) )

# Determine new y-axis coordinate for 'N1' so
# that distance between nodes would be 0.1
sep( nodes, c( 'N2', 'N1' ), desired = .1 )[2]
# Add new node using proposed y-axis coordinate
add_nodes( c( N4 = 'Node-04|x=.7|y=.466' ) )

# Distance from left edge of 'N1' and
# right edge of 'N2'
sep( nodes, c( 'N1', 'N2' ), dimension = 'x-axis' )

# Determine new x-axis coordinate for 'N2' so
# that distance between nodes would be 0.1
sep( nodes, c( 'N1', 'N2' ), 'x-axis', desired = .1 )[2]
# Add new node using proposed x-axis coordinate
add_nodes( c( N5 = 'Node-05|x=.589|y=.7' ) )


rettopnivek/pathdiagrams documentation built on April 6, 2022, 9:13 p.m.