network_plot function

Network plot of a correlation matrix

Network plot of a correlation matrix

Produces a network plot of a correlation matrix or an object computed with corr_coef(). Variables that are more highly correlated appear closer together and are joined by stronger (more opaque) and wider paths. The proximity of the points is determined using multidimensional clustering, also known as principal coordinates analysis (Gower, 1966). The color of the paths also indicates the sign of the correlation (blue for positive and red for negative).

network_plot( model, min_cor = NULL, show = c("signif", "all"), p_val = 0.05, legend = c("full", "range"), colours = c("red", "white", "blue"), legend_width = 1, legend_height = 15, legend_position = c("right", "left", "top", "bottom"), curved = TRUE, angle = 90, curvature = 0.5, expand_x = 0.25, expand_y = 0.25 )

Arguments

  • model: A model computed with corr_coef() or a symmetric matrix, often produced with stats::cor().
  • min_cor: Number to indicate the minimum value of correlations to plot (0-1 in absolute terms). By default, all the correlations are plotted when model is a matrix, and significant correlations (p-value < 0.05) when model is an object computed with corr_coef().
  • show: The correlations to be shown when model is an object computed with corr_coef(). Either "signif" (default) to show only significant correlations or "all" to show all the correlations.
  • p_val: The p-value to indicate significant correlations. Defaults to 0.05.
  • legend: The type of legend. Either "full" (ranges from -1 to +1) or "range" (ranges according to the data range). Defaults to "full".
  • colours: A vector of colors to use for n-color gradient.
  • legend_width: The width of the legend (considering position = "right")
  • legend_height: The height of the legend (considering position = "right")
  • legend_position: The legend position. Defaults to "right".
  • curved: Shows curved paths? Defaults to TRUE.
  • angle: A numeric value between 0 and 180, giving an amount to skew the control points of the curve. Values less than 90 skew the curve towards the start point and values greater than 90 skew the curve towards the end point.
  • curvature: A numeric value giving the amount of curvature. Negative values produce left-hand curves, positive values produce right-hand curves, and zero produces a straight line.
  • expand_x, expand_y: Vector of multiplicative range expansion factors. If length 1, both the lower and upper limits of the scale are expanded outwards by mult. If length 2, the lower limit is expanded by mult[1] and the upper limit by mult[2].

Returns

A ggplot object

Examples

cor <- corr_coef(iris) network_plot(cor) network_plot(cor, show = "all", curved = FALSE, legend_position = "bottom", legend = "range")

References

Gower, J.C. 1966. Some Distance Properties of Latent Root and Vector Methods Used in Multivariate Analysis. Biometrika 53(3/4): 325–338. tools:::Rd_expr_doi("10.2307/2333639")