Description Usage Arguments Details Value Author(s) References See Also Examples
rm.plot (for raw-means-plot) is a function for visualizing results of experimental designs with up to two factors. It plots both raw data (background) and factor means (foreground) to provide a more accurate visualization of the underlying distribution.
1 2 3 4 5 6 7 8 | rm.plot(d, col.offset = 2, col.x = 3, col.d = 4, noise = 0.008, na.rm = FALSE,
pch = 21:25, lty = 1:5,
bg.b.col = "darkgrey", bg.f.col = NULL, fg.b.col = "black", fg.f.col = "black",
type = "o", pt.cex = 1, lwd = 1, xlab = "", ylab = "",
ylim, max.offset = 0.2, xaxis = TRUE, x.labels, xaxt = "n",
plot = TRUE, legend = TRUE,
mar = NULL, reset.mar = TRUE, l.pos, yjust = 0.5, l.bty = "n", l.adj = c(0, 0.5),
...)
|
d |
a |
col.offset |
a |
col.x |
a |
col.d |
a |
noise |
either a |
na.rm |
|
pch |
|
lty |
|
bg.b.col |
background border color: border color of raw data points. Default: |
bg.f.col |
background filling color: fill color of raw data points. Default: |
fg.b.col |
foreground border color: border color of mean data points. Default: |
fg.f.col |
foreground fill color: fill color for mean data points. Default: |
type |
same as type in |
pt.cex |
|
lwd |
|
xlab |
x-axis label. Default: |
ylab |
y-axis label. Default: |
ylim |
the y-axis limits of the plot. If not specified (the default) will be taken from data so that all raw data points are visible and a warning message is displayed specifying the ylim. |
max.offset |
|
xaxis |
|
x.labels |
|
xaxt |
A character which specifies whether ot not the x-axis should be plotted by the call to plot function. Interfers with the aforementioned |
plot |
|
legend |
|
mar |
|
reset.mar |
|
l.pos |
|
yjust |
how the legend is to be justified relative to the legend y location. A value of 0 means top, 0.5 means centered and 1 means bottom justified. Default is 0.5. |
l.bty |
the type of box to be drawn around the legend. The allowed values are |
l.adj |
|
... |
further arguments which are either passed to plot or legend. The following argumenst are passed to legend, all others are passed to plot: |
rm.plot
is basically an advanced wrapper for two other functions: plot
and (if legend=TRUE
) legend
. Furthermore, raw data is plotted with a call to points
and the means with a call to lines
.
You can use rm.plot
to plot only a legend by setting plot = FALSE
and legend = TRUE
. Then, rm.plot
will draw an invisible plot with xlim = c(0,10)
and ylim = c(0, 10)
and place the legend on this invisible plot. You can specify l.pos
to position the legend, otherwise it will be plotted at c(5,5)
(i.e., in the middle of the plot). Note that xpd = TRUE
in the call to legend
(see link{par}
).
Nothing
Henrik Singmann
see http://www.psychologie.uni-freiburg.de/Members/singmann/R/rm.plot
rm.plot2
for a wrapper around rm.plot that will aggregate the data prior to plotting if there is more than one observation per cell.
add.ps
can be used to compare the values at each x-axis position, by adding p-values from t-tests to the x-axis.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | x <- data.frame(id = 1:150, offset = rep(c("Group A", "Group B", "Group C"),each = 50), xaxis = sample(c("A", "B", "C", "D"),150, replace = TRUE), data = c(rnorm(50, 10, 5), rnorm(50, 15,6), rnorm(50, 20, 5)))
rm.plot(x)
rm.plot(x, main = "Example", ylab = "Values", xlab = "Factor", title = "Groups")
rm.plot(x, "offset", "xaxis", "data")
rm.plot(x, "xaxis", "offset", "data")
rm.plot(x, 3, 2, 4)
x2 <- data.frame(id = 1:150, offset = rep(c("Group A", "Group B", "Group C"),each = 50), xaxis = sample(c("A", "B", "C", "D"),150, replace = TRUE), data = c(rnorm(50, 10, 5), rnorm(50, 15,6), rnorm(50, 20, 5)))
layout(matrix(c(1,2,3,3), 2,2,byrow = TRUE), heights = c(7,1))
rm.plot(x, main = "Data x1", ylab = "Values", xlab = "Factor", legend = FALSE, mar = c(4,4,4,1)+0.1)
rm.plot(x2, main = "Data x2", ylab = "Values", xlab = "Factor", legend = FALSE, mar = c(4,4,4,1)+0.1)
rm.plot(x2, plot = FALSE, title = "Groups")
y <- data.frame(id = 1:300, offset = rep(1, 300), axis = sample(LETTERS[1:6],300, replace = TRUE), data = c(rnorm(100, 1), rnorm(100), rnorm(100,1)))
par(mfrow = c(2,2))
rm.plot(y, legend = FALSE)
rm.plot(y, type = "p", legend = FALSE)
rm.plot(y, type = "l", legend = FALSE)
rm.plot(y, 3, 2, x.labels = "one group only")
z <- data.frame (id = 1:200, offset = rep(c("C 1", "C 2"), 200), axis = sample(LETTERS[1:4], 200, replace = TRUE), data = sample(1:20, 200, replace = TRUE))
par(mfrow = c(2,2))
rm.plot(z, noise = NULL, main = "no jitter")
rm.plot(z, noise = .001, main = "smaller jitter")
rm.plot(z, main = "standard jitter")
rm.plot(z, noise = .01, main = "bigger jitter")
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.