PlotCorr

0th

Percentile

Plot a Correlation Matrix

This function produces a graphical display of a correlation matrix. The cells of the matrix can be shaded or colored to show the correlation value.

Keywords
multivariate, hplot
Usage
PlotCorr(x, cols = colorRampPalette(c(Pal()[2], "white", Pal()[1]), space = "rgb")(20), breaks = seq(-1, 1, length = length(cols) + 1), border = "grey", lwd = 1, args.colorlegend = NULL, xaxt = par("xaxt"), yaxt = par("yaxt"), cex.axis = 0.8, las = 2, mar = c(3, 8, 8, 8), ...)
Arguments
x
x is a correlation matrix to be visualized.

cols
the colors for shading the matrix. Uses the package's option "col1" and "col2" as default.

breaks
a set of breakpoints for the colours: must give one more breakpoint than colour. These are passed to image() function. If breaks is specified then the algorithm used follows cut, so intervals are closed on the right and open on the left except for the lowest interval.

border
color for borders. The default is grey. Set this argument to NA if borders should be omitted.
lwd
line width for borders. Default is 1.

args.colorlegend
list of arguments for the ColorLegend. Use NA if no color legend should be painted.

xaxt
parameter to define, whether to draw an x-axis, defaults to "n".

yaxt
parameter to define, whether to draw an y-axis, defaults to "n".

cex.axis
character extension for the axis labels.

las
the style of axis labels.

mar
sets the margins, defaults to mar = c(3, 8, 8, 8) as we need a bit more room on the right.

...
the dots are passed to the function image, which produces the plot.

Value

See Also

image, ColorLegend, corrgram()

Aliases
  • PlotCorr
Examples
m <- cor(d.pizza[,sapply(d.pizza, IsNumeric, na.rm=TRUE)], use="pairwise.complete.obs")

PlotCorr(m, cols=colorRampPalette(c("red", "black", "green"), space = "rgb")(20))
PlotCorr(m, cols=colorRampPalette(c("red", "black", "green"), space = "rgb")(20),
         args.colorlegend=NA)

m <- PairApply(d.diamonds[, sapply(d.diamonds, is.factor)], CramerV, symmetric=TRUE)
PlotCorr(m, cols = colorRampPalette(c("white", "steelblue"), space = "rgb")(20),
         breaks=seq(0, 1, length=21), border="black",
         args.colorlegend = list(labels=sprintf("%.1f", seq(0, 1, length = 11)), frame=TRUE)
)
title(main="Cramer's V", line=2)
text(x=rep(1:ncol(m),ncol(m)), y=rep(1:ncol(m),each=ncol(m)),
     label=sprintf("%0.2f", m[,ncol(m):1]), cex=0.8, xpd=TRUE)

# Spearman correlation on ordinal factors
csp <- cor(data.frame(lapply(d.diamonds[,c("carat", "clarity", "cut", "polish",
                      "symmetry", "price")], as.numeric)), method="spearman")
PlotCorr(csp)

# some more colors
PlotCorr(cor(mtcars), col=Pal("RedWhiteBlue1", 100), border="grey",
         args.colorlegend=list(labels=Format(seq(-1,1,.25), digits=2), frame="grey"))
Documentation reproduced from package DescTools, version 0.99.19, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.