June Choe
  • Home
  • Blog
  • Projects
  • Research
  • CV
  • Software
  • OSF
Categories
All (37)
args (1)
colors (1)
conference (1)
data visualization (19)
data wrangling (8)
data.table (1)
DataFrames.jl (1)
design (1)
dplyr (5)
gganimate (3)
ggplot internals (1)
ggplot2 (16)
ggtrace (1)
julia (1)
metaprogramming (2)
mixed-effects models (1)
NLP (1)
plot makeover (2)
reflections (3)
rtweet (1)
shiny (1)
spacyr (1)
spatial (1)
spotifyr (1)
statistics (1)
tables (2)
tidyselect (1)
tidytuesday (7)
treemap (1)
tutorial (9)
typography (2)

Blog Posts

2025 Year in Review

reflections

In 2025, I finished my PhD, got a job, and moved to New York.

Dec 31, 2025
7 min

Read files on the web into R

tutorial

For the download-button-averse of us

Sep 22, 2024
32 min

Naming patterns for boolean enums

design

Some thoughts on the principle of enumerating possible options, even for booleans

Jul 21, 2024
14 min

ave() for the average {dplyr} user

dplyr

tidyverse 🤝 base R

Jun 23, 2024
20 min

args(args(args)(args))

args
metaprogramming

The unexpected sequal to “R is a language optimized for meme-ing”

Mar 5, 2024
17 min

HelloWorld(“print”)

metaprogramming

R is a language optimized for meme-ing

Feb 20, 2024
10 min

2023 Year in Review

reflections

Reflections and updates on what I’ve been up to in 2023

Dec 31, 2023
11 min

The many ways to (un)tidy-select

data wrangling
dplyr
tidyselect

Deconstructing {tidyselect} and building it back up

Dec 4, 2023
22 min

Fumbling my way through an XY problem

reflections

Some lessons learned from a (personal) case study

Jul 10, 2023
24 min

Row relational operations with slice()

data wrangling
dplyr

A love letter to dplyr::slice() and a gallery of usecases

Jun 11, 2023
122 min

First impressions of DataFrames.jl and accessories

julia
data wrangling
DataFrames.jl
dplyr
data.table

Perspectives from a {dplyr} and {data.table} useR

Nov 15, 2022
56 min

Reflections on useR! 2022

conference
ggtrace

Notes from attending and speaking at my first R conference

Aug 1, 2022
16 min

Demystifying delayed aesthetic evaluation: Part 2

data visualization
ggplot2
tutorial

Exposing the Stat ggproto in functional programming terms

Jul 6, 2022
52 min

Demystifying delayed aesthetic evaluation: Part 1

data visualization
ggplot2
ggplot internals
tutorial

Exploring the logic of after_stat() to peek inside ggplot internals

Mar 17, 2022
34 min

Setting up and debugging custom fonts

data visualization
ggplot2
typography
tutorial

A practical introduction to all (new) things font in R

Jun 24, 2021
44 min

Random Sampling: A table animation

data visualization
data wrangling

Plus a convenient way of rendering LaTeX expressions as images

Jan 17, 2021
50 min

Collapse repetitive piping with reduce()

data wrangling
tutorial

Featuring accumulate()

Dec 13, 2020
57 min

Plot from Yurovsky and Yu (2008)

Plot Makeover #2

plot makeover
data visualization
ggplot2

Making a dodged-stacked hybrid bar plot in {ggplot2}

Nov 8, 2020
10 min

TidyTuesday 2020 week 45

ggplot2
data visualization
tidytuesday

Waffle chart of IKEA furnitures in stock

Nov 3, 2020
5 min

TidyTuesday 2020 week 44

ggplot2
gganimate
spatial
data visualization
tidytuesday

Patched animation of the location and cumulative capacity of wind turbines in Canada

Oct 28, 2020
6 min

Analysis of @everycolorbot’s tweets

data visualization
ggplot2
rtweet
colors

And why you should avoid neon colors

Oct 22, 2020
13 min

Designing guiding aesthetics

data visualization
ggplot2
tidytuesday

The fine line between creativity and noise

Oct 13, 2020
20 min

Demystifying stat_ layers in {ggplot2}

data visualization
ggplot2
tutorial

The motivation behind stat, the distinction between stat and geom, and a case study of stat_summary()

Sep 27, 2020
26 min

TidyTuesday 2020 week 39

ggplot2
data visualization
tidytuesday

Stacked area plot of the heights of Himalayan peaks attempted over the last century

Sep 23, 2020
6 min

Plot from Husband and Patson (2020)

Plot Makeover #1

plot makeover
data visualization
ggplot2

Flattening a faceted grid for strictly horizontal comparisons

Sep 20, 2020
12 min

TidyTuesday 2020 week 38

tables
data visualization
tidytuesday

Visualizing two decades of primary and secondary education spending with {gt}

Sep 14, 2020
5 min

Embedding videos in {reactable} tables

tables
data visualization

Pushing the limits of expandable row details

Sep 12, 2020
128 min

Fonts for graphs

data visualization
typography

A small collection of my favorite fonts for data visualization

Sep 6, 2020
4 min

TidyTuesday 2020 Week 33

tidytuesday
gganimate
ggplot2

An animation of the main characters in Avatar

Aug 17, 2020
4 min

Saving a line of piping

data wrangling
dplyr
tutorial

Some notes on lesser known functions/functionalities that combine common chain of {dplyr} verbs.

Aug 7, 2020
32 min

TidyTuesday 2020 Week 32

tidytuesday
data visualization
ggplot2

A dumbbell chart visualization of energy production trends among European countries

Aug 4, 2020
7 min

Six years of my Spotify playlists

ggplot2
gganimate
spotifyr
data wrangling
data visualization

An analysis of acoustic features with {spotifyr}

Jul 29, 2020
19 min

Shiny tips - the first set

shiny

%||%, imap() + {shinybusy}, and user inputs in modalDialog()

Jul 20, 2020
7 min

geom_paired_raincloud()

data visualization
ggplot2

A {ggplot2} geom for visualizing change in distribution between two conditions.

Jul 13, 2020
11 min

Plotting treemaps with {treemap} and {ggplot2}

data visualization
treemap
ggplot2
tutorial

Using underlying plot data for maximum customization

Jun 30, 2020
15 min

Indexing tip for {spacyr}

data wrangling
NLP
spacyr

Speeding up the analysis of dependency relations.

Jun 25, 2020
21 min

The Correlation Parameter in Mixed Effects Models

statistics
mixed-effects models
tutorial

Notes on the Corr term in {lme4} output

Jun 7, 2020
41 min
No matching items

    June Choe · Made with Quarto