This helper function should be invoked to provide values for the namesake
node_aes
argument, which is present in any function where nodes are
created.
Usage
node_aes(
shape = NULL,
style = NULL,
penwidth = NULL,
color = NULL,
fillcolor = NULL,
image = NULL,
fontname = NULL,
fontsize = NULL,
fontcolor = NULL,
peripheries = NULL,
height = NULL,
width = NULL,
x = NULL,
y = NULL,
group = NULL,
tooltip = NULL,
xlabel = NULL,
URL = NULL,
sides = NULL,
orientation = NULL,
skew = NULL,
distortion = NULL,
gradientangle = NULL,
fixedsize = NULL,
labelloc = NULL,
margin = NULL
)
Arguments
- shape
The shape to use for the node. Some possible
shape
types include:circle
,rectangle
,triangle
,plaintext
,square
, andpolygon
.- style
The node line style. The
style
types that can be used are:filled
,invisible
,diagonals
,rounded
,dashed
,dotted
,solid
, andbold
.- penwidth
The thickness of the stroke line (in pt units) for the node shape. The default value is
1.0
.- color
The color of the node's outline. Can be any of the named colors that R knows about (obtained using the
colors()
function), or, a hexadecimal color code.- fillcolor
The color with which to fill the shape of the node. Can be any of the named colors that R knows about (obtained using the
colors()
function), or, a hexadecimal color code.- image
A reference to an image location.
- fontname
The name of the system font that will be used for any node text.
- fontsize
The point size of the font used for any node text.
- fontcolor
The color used for any node text. Can be any of the named colors that R knows about (obtained using the
colors()
function), or, a hexadecimal color code.- peripheries
The repeated number of node shapes (of increasing size) to draw at the node periphery.
- height
The height of the node shape, in inches. The default value is
0.5
whereas the minimum value is0.02
. This is understood as the initial, minimum height of the node. Iffixedsize
is set toTRUE
, this will be the final height of the node. Otherwise, if the node label requires more height to fit, the node's height will be increased to contain the label.- width
The width of the node shape, in inches. The default value is
0.5
whereas the minimum value is0.02
. This is understood as the initial, minimum width of the node. Iffixedsize
is set toTRUE
, this will be the final width of the node. Otherwise, if the node label requires more width to fit, the node's width will be increased to contain the label.- x
The fixed position of the node in the x direction. Any integer-based or floating point value will be accepted.
- y
The fixed position of the node in the y direction. Any integer-based or floating point value will be accepted.
- group
The node group.
- tooltip
Text for a node tooltip.
- xlabel
External label for a node. The label will be placed outside of the node but near it. These labels are added after all nodes and edges have been placed. The labels will be placed so that they do not overlap any node or label. This means it may not be possible to place all of them.
- URL
A URL to associate with a node. Upon rendering the plot, clicking nodes with any associated URLs will open the URL in the default browser.
- sides
When using the shape
polygon
, this value will provide the number of sides for that polygon.- orientation
This is the angle, in degrees, that is used to rotate nodes that have a
shape
ofpolygon
. Not that for any of the polygon shapes (set by thesides
node attribute), a value fororientation
that is0
results in a flat base.- skew
A
0-1
value that will result in the node shape being skewed to the right (from bottom to top). A value in the range0
to-1
will skew the shape to the left.- distortion
A distortion factor that is used only when a
shape
ofpolygon
is used. A0-1
value will increasingly result in the top part of the node polygon shape to be larger than the bottom. Moving from0
toward-1
will result in the opposite distortion effect.- gradientangle
The path angle for the node color fill gradient.
- fixedsize
If set to
FALSE
, the size of a node is determined by smallest width and height needed to contain its label, if any, with a margin specified by themargin
node attribute. The width and height must also be at least as large as the sizes specified by thewidth
andheight
node attributes, which specify the minimum values. If set toTRUE
, the node size is entirely specified by the values of thewidth
andheight
node attributes (i.e., the node is not expanded in size to contain the text label).- labelloc
Sets the vertical placement of labels for nodes and clusters. This attribute is used only when the height of the node is larger than the height of its label. The
labelloc
node attribute can be set to eithert
(top),c
(center), orb
(bottom). By default, the label is vertically centered.- margin
Sets the amount of space around the node's label. By default, the value is
0.11,0.055
.
See also
Other aesthetics:
edge_aes()
,
node_edge_aes_data
Examples
# Create a new graph and add
# a path with several node
# aesthetic attributes
graph <-
create_graph() %>%
add_path(
n = 3,
type = "path",
node_aes = node_aes(
shape = "circle",
x = c(1, 3, 2),
y = c(4, -1, 3)
)
)
# View the graph's internal
# node data frame; the node
# aesthetic attributes have
# been inserted
graph %>% get_node_df()
#> id type label shape x y
#> 1 1 path 1 circle 1 4
#> 2 2 path 2 circle 3 -1
#> 3 3 path 3 circle 2 3
# Create a new graph which is
# fully connected
graph <-
create_graph() %>%
add_full_graph(
n = 4,
node_data = node_data(value = 1:4),
node_aes = node_aes(
x = c(2, 1, 3, 2),
y = c(3, 2, 2, 1)
),
edge_aes = edge_aes(color = "blue")
)