Apr 18, 2019

The redacted version (pdf) of the Mueller report was released today. Here’s the thumbnailed view for a sense of the redactions.

I had to do this in R real quick, or I wasn’t going to get anything done for the rest of the day. Here’s my snippet in case you’re interested:

# install.packages(c("pdftools", "png"))



# Dimensions of 1 page.
imgwidth <- 612
imgheight <- 792

# Grid dimensions.
gridwidth <- 30
gridheight <- 15

# Total plot width and height.
spacing <- 1
totalwidth <- (imgwidth+spacing) * (gridwidth)
totalheight <- (imgheight+spacing) * gridheight

# Plot all the pages and save as PNG.
png("all_pages.png", round((imgwidth+spacing)*gridwidth/7), round((imgheight+spacing)*gridheight/7))
plot(0, 0, type='n', xlim=c(0, totalwidth), ylim=c(0, totalheight), asp=1, bty="n", axes=FALSE)
for (i in 1:448) {
    fname <- paste("mueller-report_", i, ".png", sep="")
    img <- readPNG(fname)
    x <- (i %% gridwidth) * (imgwidth+spacing)
    y <- totalheight - (floor(i / gridwidth)) * (imgheight+spacing)
    rasterImage(img, xleft=x, ybottom = y-imgheight, xright = x+imgwidth, ytop=y)

Become a member. Learn to visualize data. From beginner to advanced.

Join Today


This is for people interested in the process of creating, designing, and exploring data graphics. Your support goes directly to FlowingData, an independently run site.

What You Get

  • Instant access to tutorials on how to make and design data graphics
  • Source code and files to use with your own data
  • In-depth courses on visualization in R
  • Hand-picked links and resources from around the web
  • Members-only newsletter


Watching the growth of Walmart – now with 100% more Sam’s Club

The ever so popular Walmart growth map gets an update, and yes, it still looks like a wildfire. Sam’s Club follows soon after, although not nearly as vigorously.

One Dataset, Visualized 25 Ways

“Let the data speak” they say. But what happens when the data rambles on and on?

Shifting Incomes for American Jobs

For various occupations, the difference between the person who makes the most and the one who makes the least can be significant.

The Stages of Relationships, Distributed

Everyone’s relationship timeline is a little different. This animation plays out real-life paths to marriage.