Set the colors of selected nodes.
Arguments
- semPaths_plot
A qgraph::qgraph object generated by semPlot::semPaths, or a similar qgraph object modified by other semptools functions.
- colors
A named vector or a list of named list. See the Details section on how to set this argument.
Value
A qgraph::qgraph based on the original one, with the colors of selected nodes changed.
Details
Modify a qgraph::qgraph object generated by semPlot::semPaths and change the colors of selected nodes.
Setting the value of color_list
This argument can be set in three ways.
For a named vector, the name of an element should be the nodes for which the colors are to be changed. The names need to the displayed names if plotted, which may be different from the names in the model.
For example, to change the color of x,
the name
should be "x". Therefore,
c("y" = "red", "x" = "red") changes
the colors of the nodes y and x
to "red" and "blue",
respectively.
For a list of named lists, each named
list should have two named values:
node and new_color. The
color of node
will be set to new_color.
The second approach is no longer recommended, though kept for backward compatibility.
The last approach is setting color_list
to a one-element vector with no name.
All nodes in plot will then have the
colors set to this value.
Examples
mod_pa <-
'x1 ~~ x2
x3 ~ x1 + x2
x4 ~ x1 + x3
'
fit_pa <- lavaan::sem(mod_pa, pa_example)
m <- matrix(c("x1", NA, NA,
NA, "x3", "x4",
"x2", NA, NA), byrow = TRUE, 3, 3)
p_pa <- semPlot::semPaths(fit_pa, whatLabels="est",
style = "ram",
nCharNodes = 0, nCharEdges = 0,
layout = m)
my_color_vector <- c(x3 = "red", x4 = "blue")
p_pa2v <- set_node_color(p_pa, my_color_vector)
plot(p_pa2v)
p_pa2l <- set_node_color(p_pa, "green")
plot(p_pa2l)
