| plot_dotviolin {grafify} | R Documentation |
Plot a dotplot on a violin plot with two variables.
Description
There are three types of plot_dot_ functions that plot data as "dots" using the geom_dotplot geometry. They all take a data table, a categorical X variable and a numeric Y variable.
-
plot_dotbar_sd (bar & SD, SEM or CI95 error bars)
-
plot_dotbox (box & whiskers)
-
plot_dotviolin (box & whiskers, violin)
Usage
plot_dotviolin(
data,
xcol,
ycol,
facet,
dotsize = 1.5,
d_alpha = 0.8,
b_alpha = 0,
v_alpha = 1,
bwid = 0.3,
vadjust = 1,
trim = TRUE,
scale = "width",
TextXAngle = 0,
LogYTrans,
LogYBreaks = waiver(),
LogYLabels = waiver(),
LogYLimits = NULL,
facet_scales = "fixed",
fontsize = 20,
dotthick,
bthick,
vthick,
bvthick,
ColPal = c("okabe_ito", "all_grafify", "bright", "contrast", "dark", "fishy", "kelly",
"light", "muted", "pale", "r4", "safe", "vibrant"),
ColSeq = TRUE,
ColRev = FALSE,
SingleColour = "NULL",
...
)
Arguments
data |
a data table object, e.g. data.frame or tibble. |
xcol |
name of the column to plot on X axis. This should be a categorical variable. |
ycol |
name of the column to plot on quantitative Y axis. This should be a quantitative variable. |
facet |
add another variable from the data table to create faceted graphs using |
dotsize |
size of dots relative to |
d_alpha |
fractional opacity of dots, default set to 0.8 (i.e., 80% opacity). |
b_alpha |
fractional opacity of boxplots. Default is set to 0, which results in white boxes inside violins. Change to any value >0 up to 1 for different levels of transparency. |
v_alpha |
fractional opacity of violins, default set to 1. |
bwid |
width of boxplots; default 0.3. |
vadjust |
number to adjust the smooth/wigglyness of violin plot (default set to 1). |
trim |
set whether tips of violin plot should be trimmed at high/low data. Default |
scale |
set to "area" by default, can be changed to "count" or "width". |
TextXAngle |
orientation of text on X-axis; default 0 degrees. Change to 45 or 90 to remove overlapping text. |
LogYTrans |
transform Y axis into "log10" or "log2" |
LogYBreaks |
argument for |
LogYLabels |
argument for |
LogYLimits |
a vector of length two specifying the range (minimum and maximum) of the Y axis. |
facet_scales |
whether or not to fix scales on X & Y axes for all facet facet graphs. Can be |
fontsize |
parameter of |
dotthick |
thickness of dot border ( |
bthick |
thickness (in 'pt' units) of boxplots; default = |
vthick |
thickness (in 'pt' units) of violins; default = |
bvthick |
thickness (in 'pt' units) of both violins and boxplots; default = |
ColPal |
grafify colour palette to apply, default "okabe_ito"; see |
ColSeq |
logical TRUE or FALSE. Default TRUE for sequential colours from chosen palette. Set to FALSE for distant colours, which will be applied using |
ColRev |
whether to reverse order of colour within the selected palette, default F (FALSE); can be set to T (TRUE). |
SingleColour |
a colour hexcode (starting with #), a number between 1-154, or names of colours from |
... |
any additional arguments to pass to |
Details
Related plot_scatter_ variants show data symbols using the geom_point geometry. These are plot_scatterbar_sd (or SEM or CI95 error bars), plot_scatterbox and plot_scatterviolin. Over plotting in plot_scatter variants can be reduced with the jitter argument.
The X variable is mapped to the fill aesthetic of dots, symbols, bars, boxes and violins.
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 you prefer a single colour for the graph, use the SingleColour argument.
Value
This function returns a ggplot2 object of class "gg" and "ggplot".
Examples
#plot with trim = FALSE
plot_dotviolin(data = data_t_pdiff,
xcol = Condition, ycol = Mass,
dotsize = 2, trim = FALSE)
plot_dotviolin(data = data_t_pdiff,
xcol = Condition, ycol = Mass,
trim = FALSE, b_alpha = 0.5,
ColPal = "pale", ColSeq = FALSE)
#single colour along X
plot_dotviolin(data = data_t_pdiff,
xcol = Condition, ycol = Mass,
trim = FALSE, b_alpha = 0.5,
SingleColour = "pale_cyan")