View source: R/create_density_plot.R
create_density_plot | R Documentation |
Function creates a ggplot2 based density plot with options for scaling, shading probability areas,
and plotting observation locations. The function's density arguments mirror most of the arguments available
from density
for the Kernel Density Estimation (KDE). See the density
help page
for more information.
create_density_plot(
df = NULL,
aes_x = NULL,
aes_color = NULL,
aes_fill = NULL,
bw = "nrd0",
adjust = 1,
kernel = "gaussian",
n = 512,
position = "identity",
title = NULL,
subtitle = NULL,
caption = NULL,
center_titles = FALSE,
x_title = NULL,
y_title = NULL,
hide_x_tics = FALSE,
hide_y_tics = FALSE,
rot_x_tic_angle = 0,
rot_y_tic_label = FALSE,
density_linewdth = 1,
density_color = "black",
density_fill = "gray",
density_alpha = 0.4,
x_limits = NULL,
x_major_breaks = waiver(),
x_minor_breaks = waiver(),
x_labels = waiver(),
y_limits = NULL,
y_major_breaks = waiver(),
y_minor_breaks = waiver(),
y_labels = waiver(),
axis_text_size = 11,
show_major_grids = TRUE,
show_minor_grids = TRUE,
plot_obs = FALSE,
plot_obs_len = 0.02,
plot_obs_color = "black",
bold_x = NULL,
bold_x_color = "black",
bold_x_linetype = "dashed",
panel_color = "white",
panel_border_color = "black",
show_legend = TRUE,
legend_pos = "right",
legend_key_width = 0.7,
legend_key_height = 0.7,
legend_key_backgrd = "white",
silent_NA_warning = FALSE,
cum_prob = NULL,
area_colors = c("gray", "green", "gray"),
area_quantile_line_color = "red",
png_file_path = NULL,
png_width_height = c(480, 480)
)
df |
A required data frame that contains a numeric column from which to estimate the KDE along with possible variables for setting 'aes_color' and 'aes_fill' (see below). |
aes_x |
A required string that sets the variable of 'df' from which to estimate the KDE. |
aes_color |
Sets the variable name from 'df' for the aesthetic mapping for color. |
aes_fill |
Sets the variable name from 'df' for the aesthetic mapping for fill. |
bw |
A string or numeric that sets the smoothing bandwidth to be used with the KDE function. |
adjust |
A numeric that adjusts 'bw' since the actual bandwidth is computed as |
kernel |
A string that set the type of Kernel Density Estimation (KDE). Acceptable values are "gaussian", "rectangular", "triangular", "epanechnikov", "biweight", "cosine" or "optcosine". |
n |
The number of equally spaced points at which the density is to be estimated. This should be a power of two. |
position |
A string that sets the position. Acceptable values are "identity" which overlays or "stack" which stacks. |
title |
A string that sets the overall title. |
subtitle |
A string that sets the overall subtitle. |
caption |
A string that sets the plot caption |
center_titles |
A logical which if |
x_title |
A string that sets the x axis title. If |
y_title |
A string that sets the y axis title. If |
hide_x_tics |
A logical that controls the appearance of the x axis tics. |
hide_y_tics |
A logical that controls the appearance of the y axis tics. |
rot_x_tic_angle |
A numeric that sets the angle of rotation for the x tic labels. When x tic labels are long, a value of 40 for this argument usually works well. |
rot_y_tic_label |
A logical which if TRUE rotates the y tic labels 90 degrees for enhanced readability. |
density_linewdth |
A numeric that sets the width attribute for the density line . |
density_color |
A string that sets the color attribute for the density line . |
density_fill |
A string that sets the fill color attribute for the area under the density line. |
density_alpha |
A numeric that sets the alpha attribute value for 'density_fill'. |
x_limits |
A numeric 2 element vector or function that sets the minimum and maximum for the x axis. Use NA to refer to the existing minimum and maximum. |
x_major_breaks |
A numeric vector or function that sets the major tic locations along the x axis. |
x_minor_breaks |
A numeric vector or function that sets the minor tic locations along the x axis. |
x_labels |
A character vector or function giving x axis tic labels. Must be the same length as 'x_breaks'. |
y_limits |
A numeric 2 element vector or function that sets the minimum and maximum for the y axis. Use NA to refer to the existing minimum and maximum. |
y_major_breaks |
A numeric vector or function that sets the major tic locations along the y axis. |
y_minor_breaks |
A numeric vector or function that sets the minor tic locations along the y axis. |
y_labels |
A character vector or function giving y axis tic labels. Must be the same length as 'y_breaks'. |
axis_text_size |
A numeric that sets the font size along the axis'. Default is 11. |
show_major_grids |
A logical that controls the appearance of major grids. |
show_minor_grids |
A logical that controls the appearance of minor grids. |
plot_obs |
A logical which if |
plot_obs_len |
A numeric that sets the length of the 'plot_obs' lines. |
plot_obs_color |
A string that sets the color of the 'plot_obs' lines. |
bold_x |
A numeric that sets the x-intercept for plotting a bold vertical line. |
bold_x_color |
A string that sets the color of 'bold_x'. |
bold_x_linetype |
A string that set the linetype of 'bold_x'. |
panel_color |
A string in hexidecimal or color name that sets the plot panel's color. The default is "white". |
panel_border_color |
A string in hexidecimal or color name that sets the plot panel's border color. The default is "black". |
show_legend |
A logical that controls the appearance of the legend. |
legend_pos |
A string that sets the legend position. Acceptable values are "top", "bottom", "left", "right". |
legend_key_width |
A numeric that sets the legend width in cm. |
legend_key_height |
A numeric that sets the legend height in cm. |
legend_key_backgrd |
A string that sets the legend's background color. |
silent_NA_warning |
A logical that controls the appearance of a console warning when Na's are removed. |
cum_prob |
A one or two element numeric vector for defining cumulative probabilities which divide the density plot area. The values are probabilities with values within 0.0 to 1.0. If for example with a cumulative probability 'cum_prob' of .95, then the density is divided into two probability areas of 95 then three areas are defined. |
area_colors |
A string vector that sets the color of each area defined by 'cum_prob'. |
area_quantile_line_color |
A string that sets the vertical line color at quantile locations that divide the areas defined
by |
png_file_path |
A character string with the directory and file name to produce a png image of the plot. |
png_width_height |
A numeric vector that sets the width and height of the png image in pixels. The default is c(480,480). There are 37.8 pixels in a centimeter. |
A ggplot class object.
library(ggplot2)
library(rlang)
library(data.table)
library(RplotterPkg)
RplotterPkg::create_density_plot(
df = datasets::airquality,
aes_x = "Ozone",
rot_y_tic_label = TRUE,
x_limits = c(-40,200),
x_major_breaks = seq(-40,200,20),
title = "Ozone Air Quality",
x_title = "Ozone",
y_title = "Density",
plot_obs = TRUE,
density_fill = "green",
density_alpha = 0.5
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.