Autoplotter Tutorial ★ Limited & Confirmed

ggplot(data, aes(temperature, bleaching_score)) + geom_point(aes(color = fish_diversity > 6), alpha = 0.7) + geom_smooth(method = "lm", se = FALSE, aes(group = fish_diversity > 6)) + labs(title = "High fish diversity buffers thermal bleaching") Saved as Figure_2.png and submitted to Coral Reefs journal. | Function | Use case | |----------|----------| | auto_plot(df) | Interactive EDA dashboard | | auto_scatter(df, x, y, color) | Smart scatter with defaults | | auto_report(df) | Export a full exploration document | | auto_shiny(df) | Launch a custom Shiny explorer | | auto_notes(df) <- "text" | Attach metadata to plots |

auto_notes(data) <- "Temperature above 29°C drives bleaching, mitigated by shading treatment." Those notes appeared in the report’s appendix. Alia had to re-run the same plots weekly as new data arrived. autoplotter worked inside dplyr pipelines:

I’ve structured it like a data analyst’s journey from confusion to insight. Dr. Alia Khan, a marine biologist, stared at a CSV file named coral_bleaching_2025.csv . It had 14 columns: site , temperature , salinity , light_intensity , bleaching_score , date , depth_m , turbidity , nitrates , ph , algae_cover , fish_diversity , treatment , and recovery_days .

She never wrote a ggplot from scratch for exploration again. autoplotter tutorial

Alia whispered: “This would have taken me 3 hours.” But defaults weren’t perfect. The site names were long, and points overlapped.

auto_scatter(data, x = temperature, y = bleaching_score, color = treatment) + geom_smooth(method = "lm", se = FALSE) + labs(title = "Bleaching increases with temperature, worse in control") Still one line of code for the plot, but now custom. Her PI said: “Can you send me all the key relationships by tomorrow?”

data %>% filter(depth_m < 10) %>% auto_plot(by_group = treatment) # separate dashboard per treatment And for Shiny apps: It had 14 columns: site , temperature ,

autoplotter allowed :

auto_plot(data, point_alpha = 0.6, boxplot_fill = "skyblue", theme_use = "minimal", max_cat_levels = 10) # ignore high-cardinality columns For even more control, she used :

auto_shiny(data) # launches a Shiny app with dropdowns for x/y/facet Using auto_plot() , Alia noticed something unexpected: In sites with fish_diversity > 6 , the temperature ~ bleaching_score slope was nearly flat. She never would have thought to facet by that without the automated exploration. The site names were long

She needed to explore relationships fast. But making 50+ plots in ggplot2 manually? No time. “There has to be a function that just… plots everything smartly.” That’s when she found autoplotter . # install.packages("autoplotter") # hypothetical library(autoplotter) library(ggplot2) # autoplotter builds on it data <- read.csv("coral_bleaching_2025.csv") The magic function auto_plot(data)

Her final discovery plot:

Alia ran: