@hughagraham.bsky.social
Reposted
Day 6 of the #30DayMapChallenge (3D), a render of Mount Rainier with a realistic atmospheric skydome generated w/ a lat/long/datetime, rendered entirely in #RStats with #rayshader and #rayrender! The atmosphere is annoyingly realistic: I now have to dial in the exposure depending on the time of day!
November 8, 2025 at 1:14 AM
Day 6 of the #30DayMapChallenge (3D), a render of Mount Rainier with a realistic atmospheric skydome generated w/ a lat/long/datetime, rendered entirely in #RStats with #rayshader and #rayrender! The atmosphere is annoyingly realistic: I now have to dial in the exposure depending on the time of day!
Reposted
with{targets}, might seem that *your workflow* is complex and bespoke and not fit, you are probably wrong - it makes the expertise that is truly *yours* shine and grow. Encapsulate an entire production process and makes that easy to do
it's more *you*, actually - keep at it! #rstats
it's more *you*, actually - keep at it! #rstats
November 8, 2025 at 5:18 AM
with{targets}, might seem that *your workflow* is complex and bespoke and not fit, you are probably wrong - it makes the expertise that is truly *yours* shine and grow. Encapsulate an entire production process and makes that easy to do
it's more *you*, actually - keep at it! #rstats
it's more *you*, actually - keep at it! #rstats
Reposted
Fantastic to welcome @trishg.bsky.social to the group today 🥳
Trisha is on an 1851 fellowship and will be working on resilience loss in savannahs with myself, @tommaso-jucker.bsky.social and @mdekauwe.bsky.social
@bristolbiosci.bsky.social
scholar.google.com/citations?us...
Trisha is on an 1851 fellowship and will be working on resilience loss in savannahs with myself, @tommaso-jucker.bsky.social and @mdekauwe.bsky.social
@bristolbiosci.bsky.social
scholar.google.com/citations?us...
November 3, 2025 at 1:49 PM
Fantastic to welcome @trishg.bsky.social to the group today 🥳
Trisha is on an 1851 fellowship and will be working on resilience loss in savannahs with myself, @tommaso-jucker.bsky.social and @mdekauwe.bsky.social
@bristolbiosci.bsky.social
scholar.google.com/citations?us...
Trisha is on an 1851 fellowship and will be working on resilience loss in savannahs with myself, @tommaso-jucker.bsky.social and @mdekauwe.bsky.social
@bristolbiosci.bsky.social
scholar.google.com/citations?us...
Reposted
#rstats how do I make a target time-out, I want one in particular to only run every month or two
there's a backlog of file urls, normal use is target_this_year, but every now and then I want the prior target_all_years to invalidate and do a full scan
there's a backlog of file urls, normal use is target_this_year, but every now and then I want the prior target_all_years to invalidate and do a full scan
November 3, 2025 at 4:24 AM
#rstats how do I make a target time-out, I want one in particular to only run every month or two
there's a backlog of file urls, normal use is target_this_year, but every now and then I want the prior target_all_years to invalidate and do a full scan
there's a backlog of file urls, normal use is target_this_year, but every now and then I want the prior target_all_years to invalidate and do a full scan
Reposted
I can see {targets} evolving past tar_assign to an actual new language syntax that's just R (its successor)
I bet some are already thinking about this #rstats it's been an inexorable series of improvs and the foundation's so solid
This is the edge, actual reproducibility and scaling
I bet some are already thinking about this #rstats it's been an inexorable series of improvs and the foundation's so solid
This is the edge, actual reproducibility and scaling
November 3, 2025 at 6:36 AM
I can see {targets} evolving past tar_assign to an actual new language syntax that's just R (its successor)
I bet some are already thinking about this #rstats it's been an inexorable series of improvs and the foundation's so solid
This is the edge, actual reproducibility and scaling
I bet some are already thinking about this #rstats it's been an inexorable series of improvs and the foundation's so solid
This is the edge, actual reproducibility and scaling
Reposted
Working with raster + vector together in Python? 🗺️🌍🐍
Chapter 5 of geocompx talks about:
- Cropping & masking rasters with vectors
- Extracting raster values via vector data
- Raster ↔️ vector conversion (polygonize & rasterize)
👉 py.geocompx.org/05-raster-ve...
#GeoPython #Python #GISchat
Chapter 5 of geocompx talks about:
- Cropping & masking rasters with vectors
- Extracting raster values via vector data
- Raster ↔️ vector conversion (polygonize & rasterize)
👉 py.geocompx.org/05-raster-ve...
#GeoPython #Python #GISchat
5 Raster-vector interactions – Geocomputation with Python
An introductory resource for working with geographic data in Python
py.geocompx.org
November 2, 2025 at 2:01 PM
Working with raster + vector together in Python? 🗺️🌍🐍
Chapter 5 of geocompx talks about:
- Cropping & masking rasters with vectors
- Extracting raster values via vector data
- Raster ↔️ vector conversion (polygonize & rasterize)
👉 py.geocompx.org/05-raster-ve...
#GeoPython #Python #GISchat
Chapter 5 of geocompx talks about:
- Cropping & masking rasters with vectors
- Extracting raster values via vector data
- Raster ↔️ vector conversion (polygonize & rasterize)
👉 py.geocompx.org/05-raster-ve...
#GeoPython #Python #GISchat
Reposted
It's been a long journey (>1 year since I began), but there's finallt a public release of the oblique hachures method. With many thanks to @southarrowmaps.co.nz, who significantly refined the methodology from what I began with.
Writeup (w/ a link to the script): docs.google.com/document/d/1...
Writeup (w/ a link to the script): docs.google.com/document/d/1...
November 1, 2025 at 2:24 AM
It's been a long journey (>1 year since I began), but there's finallt a public release of the oblique hachures method. With many thanks to @southarrowmaps.co.nz, who significantly refined the methodology from what I began with.
Writeup (w/ a link to the script): docs.google.com/document/d/1...
Writeup (w/ a link to the script): docs.google.com/document/d/1...
Reposted
Viewed by #CopernicusEU Sentinel satellites, hurricane #Melissa seen over the Caribbean, currently the strongest tropical cyclone of the year worldwide.
Our thoughts are with everyone affected. Please follow guidance from local authorities and stay safe.
@noaa.gov @euspa.bsky.social @eumetsat.int
Our thoughts are with everyone affected. Please follow guidance from local authorities and stay safe.
@noaa.gov @euspa.bsky.social @eumetsat.int
October 30, 2025 at 9:17 AM
Viewed by #CopernicusEU Sentinel satellites, hurricane #Melissa seen over the Caribbean, currently the strongest tropical cyclone of the year worldwide.
Our thoughts are with everyone affected. Please follow guidance from local authorities and stay safe.
@noaa.gov @euspa.bsky.social @eumetsat.int
Our thoughts are with everyone affected. Please follow guidance from local authorities and stay safe.
@noaa.gov @euspa.bsky.social @eumetsat.int
Reposted
is element84 queries not working for some reason atm
October 30, 2025 at 9:30 AM
is element84 queries not working for some reason atm
Reposted
October 26, 2025 at 2:00 AM
Reposted
I'm guessing that R6 classes are implemented with environment shenanigans which is why base R plots can't be updated with class methods. Regardless, what's the best way to modify an existing plot within a method call? Is there a conventional pattern for passing the global environment or the like?
October 26, 2025 at 2:45 AM
I'm guessing that R6 classes are implemented with environment shenanigans which is why base R plots can't be updated with class methods. Regardless, what's the best way to modify an existing plot within a method call? Is there a conventional pattern for passing the global environment or the like?
Reposted
why tf does it suddenly work ...
October 21, 2025 at 11:44 AM
why tf does it suddenly work ...
Reposted
Does targets::tar_cancel()/tarchetypes::tar_skip() not work with dynamic branching? I get "invalid 'description' argument" when downstream arguments depend on the cancelled target. My expectation would be that the cancellation would propagate to any downstream targets.
#RStats
#RStats
October 16, 2025 at 5:44 PM
Does targets::tar_cancel()/tarchetypes::tar_skip() not work with dynamic branching? I get "invalid 'description' argument" when downstream arguments depend on the cancelled target. My expectation would be that the cancellation would propagate to any downstream targets.
#RStats
#RStats
Reposted
I recently added a Deepwiki badge to mirai.r-lib.org.
Not because I think the current documentation is lacking 😅, but it takes you to an `Ask DeepWiki` prompt with the full mirai source code as context so you can ask questions (and get answers) in *any* language.
Any feedback welcome! #rstats
Not because I think the current documentation is lacking 😅, but it takes you to an `Ask DeepWiki` prompt with the full mirai source code as context so you can ask questions (and get answers) in *any* language.
Any feedback welcome! #rstats
Minimalist Async Evaluation Framework for R
Designed for simplicity, a mirai evaluates an R expression asynchronously in a parallel process, locally or distributed over the network. Modern networking and concurrency, built on nanonext and NNG, ...
mirai.r-lib.org
October 13, 2025 at 2:46 PM
I recently added a Deepwiki badge to mirai.r-lib.org.
Not because I think the current documentation is lacking 😅, but it takes you to an `Ask DeepWiki` prompt with the full mirai source code as context so you can ask questions (and get answers) in *any* language.
Any feedback welcome! #rstats
Not because I think the current documentation is lacking 😅, but it takes you to an `Ask DeepWiki` prompt with the full mirai source code as context so you can ask questions (and get answers) in *any* language.
Any feedback welcome! #rstats
Reposted
hey spatial folks: if anyone has a great "parquet versus zarr" write-up, let me know. I'm never going to write a serializer but I'm really interested in the performance impacts of format for cloud downloads 👀
#geosky
#geosky
October 4, 2025 at 1:32 PM
hey spatial folks: if anyone has a great "parquet versus zarr" write-up, let me know. I'm never going to write a serializer but I'm really interested in the performance impacts of format for cloud downloads 👀
#geosky
#geosky
Reposted
I’m in the process of wiring a blog post (and @nacis.bsky.social talk) on using Python to drive GDAL. Has anyone tried this and been confused? If so, what tripped you up? Or if you’re an expert and have opinions, would you be willing to provide feedback? 🙏
#cartography #python #gdal
#cartography #python #gdal
October 7, 2025 at 12:40 AM
I’m in the process of wiring a blog post (and @nacis.bsky.social talk) on using Python to drive GDAL. Has anyone tried this and been confused? If so, what tripped you up? Or if you’re an expert and have opinions, would you be willing to provide feedback? 🙏
#cartography #python #gdal
#cartography #python #gdal
Reposted
8 years old blog post, sad musing API being hidden under weaker downstream packages:
www.hypertidy.org/posts/2017-0...
so much has changed! I could write the same story but for R and Python now, good news though: {gdalraster}, duckdb, pyogrio, odc, mdim, and huge improvs in GDAL itself
www.hypertidy.org/posts/2017-0...
so much has changed! I could write the same story but for R and Python now, good news though: {gdalraster}, duckdb, pyogrio, odc, mdim, and huge improvs in GDAL itself
October 8, 2025 at 7:35 PM
8 years old blog post, sad musing API being hidden under weaker downstream packages:
www.hypertidy.org/posts/2017-0...
so much has changed! I could write the same story but for R and Python now, good news though: {gdalraster}, duckdb, pyogrio, odc, mdim, and huge improvs in GDAL itself
www.hypertidy.org/posts/2017-0...
so much has changed! I could write the same story but for R and Python now, good news though: {gdalraster}, duckdb, pyogrio, odc, mdim, and huge improvs in GDAL itself
Reposted
Introducing {pmtiles}: an #rstats package to create, view, and interact with PMTiles.
PMTiles is one of the most exciting geospatial innovations in recent years. Map tiles are stored & served from a single file, making massive geospatial data visualization widely accessible.
PMTiles is one of the most exciting geospatial innovations in recent years. Map tiles are stored & served from a single file, making massive geospatial data visualization widely accessible.
October 2, 2025 at 2:26 PM
Introducing {pmtiles}: an #rstats package to create, view, and interact with PMTiles.
PMTiles is one of the most exciting geospatial innovations in recent years. Map tiles are stored & served from a single file, making massive geospatial data visualization widely accessible.
PMTiles is one of the most exciting geospatial innovations in recent years. Map tiles are stored & served from a single file, making massive geospatial data visualization widely accessible.
Reposted
kicking python concurrent.futures butt with {mirai} #rstats
gist.github.com/mdsumner/898...
(there's no reason ThreadPoolExecutor should not be as fast, I'm genuinely looking for an answer to what I'm doing wrong there)
/1
gist.github.com/mdsumner/898...
(there's no reason ThreadPoolExecutor should not be as fast, I'm genuinely looking for an answer to what I'm doing wrong there)
/1
question_parallel_pyfutures.md
GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
September 27, 2025 at 6:35 AM
kicking python concurrent.futures butt with {mirai} #rstats
gist.github.com/mdsumner/898...
(there's no reason ThreadPoolExecutor should not be as fast, I'm genuinely looking for an answer to what I'm doing wrong there)
/1
gist.github.com/mdsumner/898...
(there's no reason ThreadPoolExecutor should not be as fast, I'm genuinely looking for an answer to what I'm doing wrong there)
/1
Reposted
🌍Exploring Sentinel-2 with the Copernicus Data Space Ecosystem (CDSE)?
Hugh Graham’s guide with vrtility in #rstats. Includes authentication & query of imagery and building cloud-free composites.
permian-global-research.github.io/vrtility/art...
#RSpatial #RemoteSensing #EarthObservation #GIS
Hugh Graham’s guide with vrtility in #rstats. Includes authentication & query of imagery and building cloud-free composites.
permian-global-research.github.io/vrtility/art...
#RSpatial #RemoteSensing #EarthObservation #GIS
September 24, 2025 at 1:03 PM
🌍Exploring Sentinel-2 with the Copernicus Data Space Ecosystem (CDSE)?
Hugh Graham’s guide with vrtility in #rstats. Includes authentication & query of imagery and building cloud-free composites.
permian-global-research.github.io/vrtility/art...
#RSpatial #RemoteSensing #EarthObservation #GIS
Hugh Graham’s guide with vrtility in #rstats. Includes authentication & query of imagery and building cloud-free composites.
permian-global-research.github.io/vrtility/art...
#RSpatial #RemoteSensing #EarthObservation #GIS
Reposted
tidyverse blog: Breaking down language barriers in data science
nanonext is a messaging and concurrency toolkit, connecting R to polyglot data science pipelines involving modules written in Python, Rust, Go and C++ etc.
www.tidyverse.org/blog/2025/09...
#RStats #tidyverse
nanonext is a messaging and concurrency toolkit, connecting R to polyglot data science pipelines involving modules written in Python, Rust, Go and C++ etc.
www.tidyverse.org/blog/2025/09...
#RStats #tidyverse
nanonext 1.7.0
nanonext is a communications and concurrency toolbox that facilitates fast, powerful and reliable data exchange in polyglot data science workflows.
www.tidyverse.org
September 2, 2025 at 6:37 PM
tidyverse blog: Breaking down language barriers in data science
nanonext is a messaging and concurrency toolkit, connecting R to polyglot data science pipelines involving modules written in Python, Rust, Go and C++ etc.
www.tidyverse.org/blog/2025/09...
#RStats #tidyverse
nanonext is a messaging and concurrency toolkit, connecting R to polyglot data science pipelines involving modules written in Python, Rust, Go and C++ etc.
www.tidyverse.org/blog/2025/09...
#RStats #tidyverse
Reposted
Has anybody come up with a solution to this problem: you have a perfectly reproducible analysis pipeline that produces beautiful dynamic reports. But once you bring on even one collaborator things immediately devolve into email-attached word documents named manuscript_finalFinal_2.docx #rstats
August 27, 2025 at 5:48 AM
Has anybody come up with a solution to this problem: you have a perfectly reproducible analysis pipeline that produces beautiful dynamic reports. But once you bring on even one collaborator things immediately devolve into email-attached word documents named manuscript_finalFinal_2.docx #rstats
Reposted
On the one hand, I love the {targets} package and I use it for all my complex analyses, it's a awesome piece of kit.
On the other hand, anything taking a substantial amount of computation time I wrap in my own caching layer, as the fear of incidental upstream invalidation runs deep.
#RStats
On the other hand, anything taking a substantial amount of computation time I wrap in my own caching layer, as the fear of incidental upstream invalidation runs deep.
#RStats
August 25, 2025 at 9:36 PM
On the one hand, I love the {targets} package and I use it for all my complex analyses, it's a awesome piece of kit.
On the other hand, anything taking a substantial amount of computation time I wrap in my own caching layer, as the fear of incidental upstream invalidation runs deep.
#RStats
On the other hand, anything taking a substantial amount of computation time I wrap in my own caching layer, as the fear of incidental upstream invalidation runs deep.
#RStats
Reposted
August 22, 2025 at 2:39 PM