R/plot_bar_sd.R
plot_bar_sd.Rd
This function takes a data table, categorical X and numeric Y variables, and plots bars showing the mean with SD error bars. The X variable is mapped to the fill
aesthetic of bars.
plot_bar_sd(
data,
xcol,
ycol,
facet,
b_alpha = 1,
bwid = 0.7,
ewid = 0.3,
TextXAngle = 0,
LogYTrans,
LogYBreaks = waiver(),
LogYLabels = waiver(),
LogYLimits = NULL,
facet_scales = "fixed",
fontsize = 20,
bthick,
ColPal = c("okabe_ito", "all_grafify", "bright", "contrast", "dark", "fishy", "kelly",
"light", "muted", "pale", "r4", "safe", "vibrant"),
ColSeq = TRUE,
ColRev = FALSE,
SingleColour = "NULL",
...
)
a data table object, e.g. a data.frame or tibble.
name of the column to plot on X axis. This should be a categorical variable.
name of the column to plot on the Y axis. This should be a quantitative variable.
add another variable from the data table to create faceted graphs using ggplot2
facet_wrap.
fractional opacity of bars, default set to .5 (i.e. 50% transparent).
width of bars, default 0.7
width of error bars, default 0.3
orientation of text on X-axis; default 0 degrees. Change to 45 or 90 to remove overlapping text.
transform Y axis into "log10" or "log2"
argument for ggplot2[scale_y_continuous]
for Y axis breaks on log scales, default is waiver()
, or provide a vector of desired breaks.
argument for ggplot2[scale_y_continuous]
for Y axis labels on log scales, default is waiver()
, or provide a vector of desired labels.
a vector of length two specifying the range (minimum and maximum) of the Y axis.
whether or not to fix scales on X & Y axes for all facet facet graphs. Can be fixed
(default), free
, free_y
or free_x
(for Y and X axis one at a time, respectively).
parameter of base_size
of fonts in theme_classic
, default set to size 20.
thickness (in 'pt' units) of bar and error bar lines; default = fontsize
/
grafify colour palette to apply, default "okabe_ito"; see graf_palettes
for available palettes.
logical TRUE or FALSE. Default TRUE for sequential colours from chosen palette. Set to FALSE for distant colours, which will be applied using scale_fill_grafify2
.
whether to reverse order of colour within the selected palette, default F (FALSE); can be set to T (TRUE).
a colour hexcode (starting with #), a number between 1-154, or names of colours from grafify
colour palettes to fill along X-axis aesthetic. Accepts any colour other than "black"; use grey_lin11
, which is almost black.
any additional arguments to pass to stat_summary
.
This function returns a ggplot2
object of class "gg" and "ggplot".
The function uses stat_summary
with geom = "bar"
. Standard deviation (SD) is plotted through stat_summary
calculated using mean_sdl
from the ggplot2
package (get help with ?mean_sdl
), and 1x SD is plotted (fun.arg = list(mult = 1)
.
Colours can be changed using ColPal
, ColRev
or ColSeq
arguments. Colours available can be seen quickly with plot_grafify_palette
.
ColPal
can be one of the following: "okabe_ito", "dark", "light", "bright", "pale", "vibrant, "muted" or "contrast".
ColRev
(logical TRUE/FALSE) decides whether colours are chosen from first-to-last or last-to-first from within the chosen palette.
ColSeq
decides whether colours are picked by respecting the order in the palette or the most distant ones using colorRampPalette
.
If there are many groups along the X axis and you prefer a single colour for the graph,use the SingleColour
argument.
You are instead encouraged to show all data using the following functions: plot_scatterbar_sd
, plot_scatterbox
, plot_dotbox
, plot_dotbar_sd
, plot_scatterviolin
or plot_dotviolin
.
#Basic usage
plot_bar_sd(data = data_doubling_time,
xcol = Student, ycol = Doubling_time)
#apply distant colours in the default palette
plot_bar_sd(data = data_doubling_time,
xcol = Student, ycol = Doubling_time,
ColSeq = FALSE)
#single colour along X axis aesthetic
plot_bar_sd(data = data_doubling_time,
xcol = Student, ycol = Doubling_time,
SingleColour = "pale_cyan")