The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
AutoPlots is a comprehensive R visualization toolkit built on top of echarts4r, providing a consistent, ultra-customizable API across dozens of chart types — from classical analytics plots to advanced modeling visualizations and 3D charts.
AutoPlots exposes the full power of ECharts.js without requiring users to write JavaScript. If a feature exists in ECharts, AutoPlots aims to make it available.
30+ high-quality plot types — all with consistent argument naming
Full access to ECharts options using the xxx.* naming convention
No JavaScript required
Shiny-ready out of the box
Supports multi-plot layouts via display_plots_grid()
3D visualizations, modeling plots, river charts, radar, parallel, contour, density, and more
Designed for data science, EDA, dashboards, and model evaluation
AutoPlots is built around these principles:
Every plot is a standalone object Modify, tweak, and filter each one independently.
Composition happens outside the plot Use display_plots_grid() to arrange multiple plots into dashboards.
Expose full ECharts power without JS Legend, toolbox, tooltip, axis, series, grid, animation, theme — everything is adjustable.
Beautiful defaults, infinite customization Beginners get great plots immediately; experts can tune everything.
# Install CRAN dependencies
install.packages(c(
"combinat", "data.table", "devtools", "dplyr", "e1071", "echarts4r",
"lubridate", "nortest", "quanteda", "quanteda.textstats", "scales"
))
# Install AutoPlots from GitHub
devtools::install_github("AdrianAntico/AutoPlots", upgrade = FALSE, force = TRUE)library(AutoPlots)
dt <- data.table::data.table(x = rnorm(1000))
AutoPlots::Density(
dt,
XVar = "x",
legend.show = FALSE
)Below are the full set of examples (kept from your original README), organized using collapsible sections for easier navigation.
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = mean(Independent_Variable8)
), by = c("DateTime")]
# Build plot
AutoPlots::Area(
dt = data,
XVar = "DateTime",
YVar = "IndepVar",
areaStyle.color = c("#80AAFF","#BDD5FF","#CFCFCF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = mean(Independent_Variable8)
), by = c("DateTime", "Factor_1")]
# Build plot
ch <- as.character(sort(unique(data$Factor_1)))
plot_list <- lapply(ch, function(x) {
AutoPlots::Area(
dt = data[Factor_1 == x],
XVar = "DateTime",
YVar = "IndepVar",
Height = "300px",
title.text = paste0("Factor_1: ", x),
areaStyle.color = c("#80AAFF","#BDD5FF","#CFCFCF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE)
})
AutoPlots::display_plots_grid(
plot_list,
cols = 2
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = mean(Independent_Variable8)
), by = c("DateTime")]
# Build plot
AutoPlots::Bar(
dt = data,
XVar = "DateTime",
YVar = "IndepVar",
backgroundStyle.color = c("#80AAFF","#BDD5FF","#CFCFCF"),
backgroundStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = mean(Independent_Variable8)
), by = c("DateTime", "Factor_1")]
# Build plot
ch <- as.character(sort(unique(data$Factor_1)))
plot_list <- lapply(ch, function(x) {
AutoPlots::Bar(
dt = data[Factor_1 == x],
XVar = "DateTime",
YVar = "IndepVar",
Height = "300px",
title.text = paste0("Factor_1: ", x),
backgroundStyle.color = c("#80AAFF","#BDD5FF","#CFCFCF"),
backgroundStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE)
})
AutoPlots::display_plots_grid(
plot_list,
cols = 2
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data[1, Independent_Variable8 := 0.6]
data[2, Independent_Variable8 := 0.7]
data[3, Independent_Variable8 := 0.8]
data[4, Independent_Variable8 := 0.9]
# Build plot
AutoPlots::Box(
dt = data,
XVar = "Factor_1",
YVar = "Independent_Variable8",
yAxis.title = "IndepVar",
itemStyle.color = c("red","#BDD5FF","blue"),
itemStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data[1, Independent_Variable8 := 0.6]
data[2, Independent_Variable8 := 0.7]
data[3, Independent_Variable8 := 0.8]
data[4, Independent_Variable8 := 0.9]
# Build plot
ch <- c("Factor_1", "Factor_2")
plot_list <- lapply(ch, function(x) {
AutoPlots::Box(
dt = data,
XVar = x,
YVar = "Independent_Variable8",
Height = "300px",
title.text = paste0("Factor_1: ", x),
itemStyle.color = c("red","#BDD5FF","blue"),
itemStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE)
})
AutoPlots::display_plots_grid(
plot_list,
cols = 1
)# Create correlated data
n <- 1000 # rows
p <- 4 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10) # means (length p)
sds <- c(10, 5, 3, 1) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
# Build plot
p1 <- AutoPlots::Copula(
dt = dt,
XVar = "x1",
YVar = "x2",
legend.show = FALSE
)
# Create correlated data
n <- 1000 # rows
p <- 4 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10) # means (length p)
sds <- c(10, 5, 3, 1) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
# Build plot
p1 <- AutoPlots::Copula(
dt = dt,
XVar = "x1",
YVar = "x2",
title.text = "x1 vs. x2",
legend.show = FALSE
)
# Build plot
p2 <- AutoPlots::Copula(
dt = dt,
XVar = "x1",
YVar = "x3",
title.text = "x1 vs. x3",
legend.show = FALSE
)
# Build plot
p3 <- AutoPlots::Copula(
dt = dt,
XVar = "x2",
YVar = "x3",
title.text = "x2 vs. x3",
legend.show = FALSE
)
# Build plot
p4 <- AutoPlots::Copula(
dt = dt,
XVar = "x3",
YVar = "x4",
title.text = "x3 vs. x4",
legend.show = FALSE
)
AutoPlots::display_plots_grid(
list(p1,p2,p3,p4),
cols = 2
)n <- 1000 # rows
p <- 4 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10) # means (length p)
sds <- c(10, 5, 3, 1) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
# Build Plot
AutoPlots::CorrMatrix(
dt = dt,
PreAgg = FALSE,
Method = "Spearman",
CorrVars = c("x1","x2","x3","x4"),
ShowLabels = TRUE,
visualMap.InRange.color = c("white", "gray", "darkblue")
)
n <- 1000 # rows
p <- 4 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10) # means (length p)
sds <- c(10, 5, 3, 1) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
# Build Plot
p1 <- AutoPlots::CorrMatrix(
dt = dt,
PreAgg = FALSE,
Method = "Spearman",
CorrVars = c("x1","x2","x3","x4"),
ShowLabels = TRUE,
visualMap.InRange.color = c("white", "gray", "darkblue"),
title.text = "Spearman Correlation"
)
p2 <- AutoPlots::CorrMatrix(
dt = dt,
PreAgg = FALSE,
Method = "Pearson",
CorrVars = c("x1","x2","x3","x4"),
ShowLabels = TRUE,
visualMap.InRange.color = c("white", "gray", "darkgreen"),
title.text = "Pearson Correlation"
)
p3 <- AutoPlots::CorrMatrix(
dt = dt,
PreAgg = FALSE,
Method = "Kendall",
CorrVars = c("x1","x2","x3","x4"),
ShowLabels = TRUE,
visualMap.InRange.color = c("white", "gray", "darkred"),
title.text = "Kendall's Tau Correlation"
)
AutoPlots::display_plots_grid(
list(p1,p2,p3),
cols = 2
)# Create fake data
data <- data.table::data.table(IndepVar = rnorm(1000, mean = 0, sd = 1))
# Build plot
AutoPlots::Density(
dt = data,
XVar = "IndepVar",
areaStyle.color = c("#697AFF","#A1ADFF","#D9DEFF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE
)
# Create fake data
data <- data.table::data.table(IndepVar = rnorm(1000, mean = 5, sd = 2))
data[, IndepVar2 := rnorm(1000, mean = 10, sd = 5)]
data[, IndepVar3 := rnorm(1000, mean = 10, sd = 15)]
data[, IndepVar4 := rnorm(1000, mean = 10, sd = 20)]
# Build Plots
p1 <- AutoPlots::Density(
dt = data,
XVar = "IndepVar",
title.text = "IndepVar",
areaStyle.color = c("#697AFF","#A1ADFF","#D9DEFF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE
)
p2 <- AutoPlots::Density(
dt = data,
XVar = "IndepVar2",
title.text = "IndepVar2",
areaStyle.color = c("#697AFF","#A1ADFF","#D9DEFF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE
)
p3 <- AutoPlots::Density(
dt = data,
XVar = "IndepVar3",
title.text = "IndepVar3",
areaStyle.color = c("#697AFF","#A1ADFF","#D9DEFF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE
)
p4 <- AutoPlots::Density(
dt = data,
XVar = "IndepVar4",
title.text = "IndepVar4",
areaStyle.color = c("#697AFF","#A1ADFF","#D9DEFF"),
areaStyle.opacity = c(0.9,0.4,0.05),
legend.show = FALSE
)
AutoPlots::display_plots_grid(
list(p1,p2,p3,p4),
cols = 2
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1")]
# Build Plot
AutoPlots::Donut(
dt = data,
XVar = "Factor_1",
YVar = "IndepVar"
)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
dt1 <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1")]
dt2 <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_2")]
# Build Plots
p1 <- AutoPlots::Donut(
dt = dt1,
XVar = "Factor_1",
YVar = "IndepVar",
title.text = "Factor_1"
)
p2 <- AutoPlots::Donut(
dt = dt2,
XVar = "Factor_2",
YVar = "IndepVar",
title.text = "Factor_2"
)
AutoPlots::display_plots_grid(
list(p1, p2),
cols = 1
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 100000, Correlation = 0.1)
data <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1", "Factor_2")]
# Build Plots
AutoPlots::HeatMap(
dt = data,
XVar = "Factor_1",
YVar = "Factor_2",
ZVar = "IndepVar",
title.text = "V1",
label.show = TRUE,
label.fontWeight = "bolder",
emphasis.shadowColor = "white",
emphasis.shadowBlur = 10,
visualMap.InRange.color = c("blue", "white", "red")
)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 100000, Correlation = 0.1)
data <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1", "Factor_2")]
# Build Plots
p1 <- AutoPlots::HeatMap(
dt = data,
XVar = "Factor_1",
YVar = "Factor_2",
ZVar = "IndepVar",
title.text = "V1",
label.show = TRUE,
label.fontWeight = "bolder",
emphasis.shadowColor = "white",
emphasis.shadowBlur = 10,
visualMap.InRange.color = c("blue", "white", "red")
)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 100000, Correlation = 0.1)
data <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1", "Factor_2")]
# Build Plots
p2 <- AutoPlots::HeatMap(
dt = data,
XVar = "Factor_1",
YVar = "Factor_2",
ZVar = "IndepVar",
title.text = "V2",
label.show = TRUE,
label.fontWeight = "bolder",
emphasis.shadowColor = "white",
emphasis.shadowBlur = 10,
visualMap.InRange.color = c("green", "white", "orange")
)
AutoPlots::display_plots_grid(
list(p1, p2),
cols = 1
)# Create fake data
data <- data.table::data.table(Variable = rnorm(n = 1000, mean = 5, sd = 2))
# Build Plots
AutoPlots::Histogram(
dt = data,
XVar = "Variable",
backgroundStyle.color = c("lightblue","darkblue","blue","blue"),
backgroundStyle.opacity = c(0.9,0.7,0.6,0.05),
legend.show = FALSE
)
# Create fake data
data <- data.table::data.table(Variable = rnorm(n = 1000, mean = 5, sd = 2))
data[, Variable2 := rnorm(n = 1000, mean = 5, sd = 5)]
data[, Variable3 := rnorm(n = 1000, mean = 5, sd = 10)]
data[, Variable4 := rnorm(n = 1000, mean = 5, sd = 20)]
# Build Plots
p1 <- AutoPlots::Histogram(
dt = data,
XVar = "Variable",
title.text = "Var",
backgroundStyle.color = c("lightblue","darkblue","blue","blue"),
backgroundStyle.opacity = c(0.9,0.7,0.6,0.05),
legend.show = FALSE
)
p2 <- AutoPlots::Histogram(
dt = data,
XVar = "Variable2",
title.text = "Var2",
backgroundStyle.color = c("lightblue","darkblue","blue","blue"),
backgroundStyle.opacity = c(0.9,0.7,0.6,0.05),
legend.show = FALSE
)
p3 <- AutoPlots::Histogram(
dt = data,
XVar = "Variable3",
title.text = "Var3",
backgroundStyle.color = c("lightblue","darkblue","blue","blue"),
backgroundStyle.opacity = c(0.9,0.7,0.6,0.05),
legend.show = FALSE
)
p4 <- AutoPlots::Histogram(
dt = data,
XVar = "Variable4",
title.text = "Var4",
backgroundStyle.color = c("lightblue","darkblue","blue","blue"),
backgroundStyle.opacity = c(0.9,0.7,0.6,0.05),
legend.show = FALSE
)
AutoPlots::display_plots_grid(
list(p1,p2,p3,p4),
cols = 2
)# Create data
data <- AutoPlots::FakeDataGenerator(N = 1000, AddDate = T)
data <- data[, .(
IndepVar = mean(Independent_Variable8)
), by = c("DateTime")]
# Build plot
AutoPlots::Line(
dt = data,
XVar = "DateTime",
YVar = "IndepVar",
title.text = "IndepVar",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
# Create data
data <- AutoPlots::FakeDataGenerator(N = 1000, AddDate = T)
data <- data[, .(
IndepVar = mean(Independent_Variable8),
IndepVar2 = mean(Independent_Variable7),
IndepVar3 = mean(Independent_Variable6),
IndepVar4 = mean(Independent_Variable5)
), by = c("DateTime")]
# Build plot
p1 <- AutoPlots::Line(
dt = data,
XVar = "DateTime",
YVar = "IndepVar",
title.text = "IndepVar",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
p2 <- AutoPlots::Line(
dt = data,
XVar = "DateTime",
YVar = "IndepVar2",
title.text = "IndepVar2",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
p3 <- AutoPlots::Line(
dt = data,
XVar = "DateTime",
YVar = "IndepVar3",
title.text = "IndepVar3",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
p4 <- AutoPlots::Line(
dt = data,
XVar = "DateTime",
YVar = "IndepVar4",
title.text = "IndepVar4",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
AutoPlots::display_plots_grid(
list(p1,p2,p3,p4),
cols = 2
)# Create data
n <- 1000 # rows
p <- 8 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10,1,2,3,4) # means (length p)
sds <- c(10, 5, 3, 1, 1,2,3,4) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
data.table::setnames(dt, "x1", "bl bl bl")
# Build Plot
AutoPlots::Parallel(
dt = dt,
CorrVars = names(dt),
ShowLabels = T,
lineStyle.color = "#00C7FF",
lineStyle.width = 0.2
)
# Create data
data <- AutoPlots::FakeDataGenerator(N = 1000, ID = 0)
data.table::setnames(
data,
paste0("Independent_Variable", 1:8),
paste0("x", 1:8)
)
# Build Plots
group_vars <- sort(as.character(unique(data$Factor_1)))[1:4]
plot_list <- lapply(group_vars, function(x) {
AutoPlots::Parallel(
dt = data[Factor_1 == x],
CorrVars = paste0("x", 1:8),
ShowLabels = T,
lineStyle.color = "#00C7FF",
lineStyle.width = 0.2,
title.text = x
)
})
AutoPlots::display_plots_grid(
plot_list,
cols = 2
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1")]
# Build Plot
AutoPlots::Pie(
dt = data,
XVar = "Factor_1",
YVar = "IndepVar",
ShowLabels = T)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
dt1 <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1")]
dt2 <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_2")]
# Build Plots
p1 <- AutoPlots::Pie(
dt = dt1,
XVar = "Factor_1",
YVar = "IndepVar",
title.text = "Factor_1",
ShowLabels = T)
p2 <- AutoPlots::Pie(
dt = dt2,
XVar = "Factor_2",
YVar = "IndepVar",
title.text = "Factor_2",
ShowLabels = T)
AutoPlots::display_plots_grid(
list(p1, p2),
cols = 1
)# Create Data
dt <- data.table::data.table(
Y1 = pnorm(q = runif(10)),
Y2 = pnorm(q = runif(10)),
Y3 = pnorm(q = runif(10)),
GV = sample(LETTERS[1:10], 10, TRUE))
# Create plot
AutoPlots::Radar(
dt = dt,
AggMethod = "mean",
ShowLabels = TRUE,
PreAgg = FALSE,
YVar = c("Y1","Y2","Y3"),
GroupVar = "GV",
lineStyle.color = c("#00BFFF", "#FF69B4", "#32CD32"))
# Create Data
dt <- data.table::data.table(
Y1 = pnorm(q = runif(10)),
Y2 = pnorm(q = runif(10)),
Y3 = pnorm(q = runif(10)),
GV = sample(LETTERS[1:10], 10, TRUE))
dt2 <- data.table::data.table(
Y1 = pnorm(q = runif(10)),
Y2 = pnorm(q = runif(10)),
Y3 = pnorm(q = runif(10)),
GV = sample(LETTERS[11:20], 10, TRUE))
# Create plot
p1 <- AutoPlots::Radar(
dt = dt,
AggMethod = "mean",
ShowLabels = TRUE,
PreAgg = FALSE,
YVar = c("Y1","Y2","Y3"),
GroupVar = "GV",
title.text = "Data 1",
lineStyle.color = c("#00BFFF", "#FF69B4", "#32CD32"))
p2 <- AutoPlots::Radar(
dt = dt2,
AggMethod = "mean",
ShowLabels = TRUE,
PreAgg = FALSE,
YVar = c("Y1","Y2","Y3"),
GroupVar = "GV",
title.text = "Data 2",
lineStyle.color = c("#00BFFF", "#FF69B4", "#32CD32"))
AutoPlots::display_plots_grid(
list(p1,p2),
cols = 1
)# Create fake data
dates <- seq.Date(Sys.Date() - 30, Sys.Date(), by = "day")
grps <- lapply(LETTERS[1:5], rep, 31) |> unlist()
dt <- data.table::data.table(
dates = rep(dates, 5),
groups = grps,
values = runif(length(grps), 1, 50)
)
# Build Plot
AutoPlots::River(
dt = dt,
PreAgg = TRUE,
XVar = "dates",
YVar = "values",
GroupVar = "groups",
legend.orient = "horizontal",
itemStyle.color = c("#FF4C4C", "#00BFFF", "#FFD700", "#32CD32", "#FF69B4")
)
# Create fake data
dates <- seq.Date(Sys.Date() - 30, Sys.Date(), by = "day")
grps <- lapply(LETTERS[1:5], rep, 31) |> unlist()
dt1 <- data.table::data.table(
dates = rep(dates, 5),
groups = grps,
values = runif(length(grps), 1, 50)
)
dates <- seq.Date(Sys.Date() - 30, Sys.Date(), by = "day")
grps <- lapply(LETTERS[6:10], rep, 31) |> unlist()
dt2 <- data.table::data.table(
dates = rep(dates, 5),
groups = grps,
values = runif(length(grps), 1, 50)
)
+-
# Build Plot
p1 <- AutoPlots::River(
dt = dt1,
PreAgg = TRUE,
XVar = "dates",
YVar = "values",
GroupVar = "groups",
title.text = "Data 1",
legend.orient = "horizontal",
itemStyle.color = c("#FF4C4C", "#00BFFF", "#FFD700", "#32CD32", "#FF69B4")
)
p2 <- AutoPlots::River(
dt = dt2,
PreAgg = TRUE,
XVar = "dates",
YVar = "values",
GroupVar = "groups"
title.text = "Data 2",
legend.orient = "horizontal",
itemStyle.color = c("#00FFFF", "#FF7F50", "#8A2BE2", "#00FF7F", "#FF4500"))
AutoPlots::display_plots_grid(
list(p1, p2),
cols = 1
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
data <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1")]
# Build Plot
AutoPlots::Rosetype(
dt = data,
XVar = "Factor_1",
YVar = "IndepVar"
)
# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 1000)
dt1 <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_1")]
dt2 <- data[, .(
IndepVar = round(mean(Independent_Variable8), 3)
), by = c("Factor_2")]
# Build Plots
p1 <- AutoPlots::Rosetype(
dt = dt1,
XVar = "Factor_1",
YVar = "IndepVar",
title.text = "Factor_1"
)
p2 <- AutoPlots::Rosetype(
dt = dt2,
XVar = "Factor_2",
YVar = "IndepVar",
title.text = "Factor_2"
)
AutoPlots::display_plots_grid(
list(p1, p2),
cols = 1
)# Create data
n <- 1000 # rows
p <- 4 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10) # means (length p)
sds <- c(10, 5, 3, 1) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
# Build Plot
AutoPlots::Scatter(
dt = dt,
XVar = "x2",
YVar = "x1",
legend.show = FALSE
)
# Create data
n <- 1000 # rows
p <- 4 # number of variables
rho <- 0.8 # correlation between neighbors (AR(1))
mu <- c(50, 100, 0, 10) # means (length p)
sds <- c(10, 5, 3, 1) # standard deviations (length p)
Sigma_cor <- outer(1:p, 1:p, \(i, j) rho^abs(i - j)) # AR(1) correlation matrix
L <- chol(Sigma_cor) # Cholesky factor (upper-tri)
Z <- matrix(rnorm(n * p), nrow = n, ncol = p) # iid N(0,1)
X_cor <- Z %*% L # correlated, unit variance
X <- X_cor %*% diag(sds) # set std devs
X <- sweep(X, 2, mu, `+`) # set means
dt <- data.table::as.data.table(X)
data.table::setnames(dt, paste0("x", seq_len(p)))
# Build Plots
p1 <- AutoPlots::Scatter(
dt = dt,
XVar = "x2",
YVar = "x1",
legend.show = FALSE,
title.text = "x1 vs x2"
)
p2 <- AutoPlots::Scatter(
dt = dt,
XVar = "x3",
YVar = "x1",
legend.show = FALSE,
title.text = "x1 vs x3"
)
p3 <- AutoPlots::Scatter(
dt = dt,
XVar = "x3",
YVar = "x2",
legend.show = FALSE,
title.text = "x2 vs x3"
)
p4 <- AutoPlots::Scatter(
dt = dt,
XVar = "x4",
YVar = "x3",
legend.show = FALSE,
title.text = "x3 vs x4"
)
AutoPlots::display_plots_grid(
list(p1,p2,p3,p4),
cols = 2
)# Create fake data
data <- AutoPlots::FakeDataGenerator(N = 100000)
data <- data[, .(
IndepVar = sum(Independent_Variable1)
), by = c("Factor_1","Factor_2")]
# Echarts Stacked Bar Chart
AutoPlots::StackedBar(
dt = data,
XVar = "Factor_1",
YVar = "IndepVar",
GroupVar = "Factor_2",
legend.right = 35,
legend.top = 45,
yAxis.nameTextStyle.padding = 40
)# Create data
data <- AutoPlots::FakeDataGenerator(N = 1000, AddDate = T)
data <- data[, .(
IndepVar = mean(Independent_Variable8)
), by = c("DateTime")]
# Build plot
AutoPlots::Step(
dt = data,
XVar = "DateTime",
YVar = "IndepVar",
title.text = "IndepVar",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
# Create data
data <- AutoPlots::FakeDataGenerator(N = 1000, AddDate = T)
data <- data[, .(
IndepVar = mean(Independent_Variable8),
IndepVar2 = mean(Independent_Variable7),
IndepVar3 = mean(Independent_Variable6),
IndepVar4 = mean(Independent_Variable5)
), by = c("DateTime")]
# Build plot
p1 <- AutoPlots::Step(
dt = data,
XVar = "DateTime",
YVar = "IndepVar",
title.text = "IndepVar",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
p2 <- AutoPlots::Step(
dt = data,
XVar = "DateTime",
YVar = "IndepVar2",
title.text = "IndepVar2",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
p3 <- AutoPlots::Step(
dt = data,
XVar = "DateTime",
YVar = "IndepVar3",
title.text = "IndepVar3",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
p4 <- AutoPlots::Step(
dt = data,
XVar = "DateTime",
YVar = "IndepVar4",
title.text = "IndepVar4",
lineStyle.color = c("red","#3848FF","blue"),
legend.show = FALSE
)
AutoPlots::display_plots_grid(
list(p1,p2,p3,p4),
cols = 2
)These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.