Kyle Walker
banner
kylewalker.bsky.social
Kyle Walker
@kylewalker.bsky.social
Demographics | Geospatial | Data Science | Open Source
Today's mapgl tip for #30DayMapChallenge: Air

Use the `set_fog()` function to change the color of the sky on your @Mapbox map. Visualize the glow of the Northern Lights - or whatever you can come up with!
November 10, 2025 at 2:46 PM
A custom styling trick for #30DayMapChallenge: Analog

For a "classic" look on your mapgl MapLibre maps, load a parchment paper image (or whatever you'd like) and override the basemap.

Here's how to do it: gist.github.com/walkerke/648...
November 9, 2025 at 3:58 PM
#30DayMapChallenge Day 7: Accessibility

Today's tip: calculate access from a location in one line of code with `mb_isochrone()` in the mapboxapi R package.

Then, visualize creatively with a comparison slider in mapgl.

Learn how: walker-data.com/posts/time-a...
November 7, 2025 at 2:40 PM
Interactive heatmaps that fade away to reveal points on zoom - a useful technique for handling dense spatial data.

Learn how to do it: walker-data.com/posts/mapgl-...
November 6, 2025 at 9:41 PM
Today's mapgl tip for Day 6 of #30DayMapChallenge: Dimensions

Visualize your spatial data in 3D with `add_fill_extrusion_layer()`!

The key is `fill_extrusion_height`; map a column of heights here or use a helper like `interpolate()` to control how you extrude your polygons.
November 6, 2025 at 5:18 PM
I got a lot of interest in yesterday's geolocation / Overture Maps places proof-of-concept.

I've published the app here for you to try out: walkerke-restaurant-finder-app.share.connect.posit.cloud

For #rstats devs, I've also published the source code here: gist.github.com/walkerke/4a1...
November 5, 2025 at 5:33 PM
#30DayMapChallenge Day 5: Earth

Today's tip: in #rstats mapgl, use `mapboxgl(style = mapbox_style("standard-satellite"))` to get @mapbox.com high-quality imagery on an interactive globe in one line of code.

Even better - you get 3D terrain out of the box!
November 5, 2025 at 1:35 PM
Proof-of-concept for an in-app geolocation control:

- Find your location, draw a buffer (or isochrone, etc.) around it;
- Query a massive tileset (64 million places from Overture Maps) to find nearby places;
- Deliver that information to your app users.
November 4, 2025 at 7:00 PM
Today's mapgl tip: use `add_geolocate_control()` to add a geolocation control to your map.

Click to fly to your location; in Shiny, use `input$MAPID_geolocate` to get the coordinates.

Great for building apps designed for use in the field!

#30DayMapChallenge Day 4: My Data
November 4, 2025 at 2:40 PM
1.7 million Texas oil & gas wells at your fingertips.

Lasso wells on the map, download the data instantly.

From selection to export in seconds.

(By the way, this is powered by Shiny and #rstats)
November 3, 2025 at 9:47 PM
311,000+ Texas Land Survey System areas.

Explored over satellite imagery in a single line of code.

Modern geospatial technology can take your land & ownership mapping to the next level.

#30DayMapChallenge Day 3: Polygons
November 3, 2025 at 2:48 PM
For Day 2 of #30DayMapChallenge (Lines): did you know that mapgl has a built-in measurement tool in its draw control?

Use `show_measurements = TRUE` to interactively measure line distances (and polygon areas) on your map.

#rstats
November 2, 2025 at 12:09 PM
440,000+ oil and gas wells in Oklahoma.

Intelligently clustered and smoothly displayed on a map with click-to-zoom.

mapgl tip: use `cluster_options()` on a circle or symbol layer, no extra configuration required!

#30DayMapChallenge Day 1: Points
November 1, 2025 at 3:23 PM
On the blog: building an AI-powered location explorer, updated to Claude Sonnet 4.5!

Learn how to use the ellmer and shinychat R packages to integrate chat into your Shiny apps.

Check it out: walker-data.com/posts/ai-loc...
October 26, 2025 at 1:01 PM
The 1.4 release of @duckdb.org supports using a DuckDB database to serve vector tiles!

Of course, I had to try this out in R.

Check it out: all 242,000 US Census block groups dynamically served as vector tiles from a DuckDB database, displayed on a MapLibre map from R in Positron.
October 24, 2025 at 6:19 PM
All 8.1 million US Census blocks.

Visualized smoothly in 3D.

Instant population and housing totals from a lasso selection.

All running seamlessly in the browser, no traditional backend.

While everyone’s talking about AI, it’s an incredible time for geospatial tech.
October 23, 2025 at 8:20 PM
Most accessibility analyses use "average" travel times.

But rush hour isn't average.

Your "15-minute service area" might be 25 minutes when it actually matters—when patients need care, employees commute, emergencies happen.

Learn how to handle this: walker-data.com/posts/time-a...
October 21, 2025 at 6:12 PM