Josh Persi
banner
joshpersi.bsky.social
Josh Persi
@joshpersi.bsky.social
Data scientist and serial hobbyist 🏋️👨‍🍳🪴
It's day 10 of the #30DayMapChallenge and the prompt is 'air', so I plotted global air temperature!

#DataViz #RStats #ggplot2
November 11, 2025 at 3:14 AM
Day 8 of the #30DayMapChallenge and I'm plotting a road network of Montréal!

#DataViz #RStats #ggplot2
November 8, 2025 at 2:48 PM
Reposted by Josh Persi
For the "accessibility" prompt on day 7 of the #30DayMapChallenge, I decided to investigate how accessible the default #ggplot2 colours are to people with different types of colour vision deficiency (and for different numbers of colours used). 🎨

#RStats #DataViz
November 7, 2025 at 5:39 PM
I learned how little I know about accessibility with day 7 of the #30DayMapChallenge. I tried to use a legible font and added an alt-text, but my colors are low-contrast and I have no idea how far off of best practice I am. If you have resources on making maps accessible, please share them with me!
November 8, 2025 at 12:12 AM
Day 6 of the #30DayMapChallenge makes things 3D! I took my elevation map from yesterday and made it so with the {rayshader} package.

#DataViz #RStats #ggplot2
November 7, 2025 at 1:08 AM
The prompt for day 5 of the #30DayMapChallenge was 'Earth' so I tried to plot the elevation of the Kananaskis Valley!
November 6, 2025 at 4:19 AM
For Day 3 of the #30DayMapChallenge, I mapped the regions and departments of mainland France!

I learned a lot about {ggrepel} but couldn't quite get the labels to be on the outside of each region. Something to work on for next time!
November 4, 2025 at 7:37 PM
Day 2 of the #30DayMapChallenge is all about lines.

Here's a single line that's near and dear to my heart — the Pacific Crest Trail!
November 4, 2025 at 3:52 AM
Already a couple days behind! Here's my contribution for the first day of the #30DayMapChallenge.

The HMS Terror and Erebus were abandoned during John Franklin's attempt to find the Northwest Passage.

#DataViz #RStats #ggplot2
November 3, 2025 at 5:05 AM