Recent Releases of Using the tidyverse with terra objects

Using the tidyverse with terra objects - tidyterra 0.7.2

  • Hotfix: Correct error on tests for CRAN.

What's Changed

  • Fix CRAN tests by @dieghernan in https://github.com/dieghernan/tidyterra/pull/174

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.7.1...v0.7.2

Scientific Software - Peer-reviewed - R
Published by dieghernan about 1 year ago

Using the tidyverse with terra objects - tidyterra 0.7.1

  • New parameters in geom_spatraster_*: mask_projection. When set to TRUE avoid SpatRaster to wrapping around on some projections (see #115 and #169, by \@dramanica).
  • Fix an old bug exposed after terra 1.8-42: Plots crash when using ggplot2::facet_wrap() in combination with coord_sf() (or with implicit change of CRS due to other sf/Spat* objects).

What's Changed

  • add mask for projection to avoid wrap around (fix #115) by @dramanica in https://github.com/dieghernan/tidyterra/pull/169
  • [ImgBot] Optimize images by @imgbot in https://github.com/dieghernan/tidyterra/pull/172

New Contributors

  • @dramanica made their first contribution in https://github.com/dieghernan/tidyterra/pull/169

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.7.0...v0.7.1

Scientific Software - Peer-reviewed - R
Published by dieghernan about 1 year ago

Using the tidyverse with terra objects - tidyterra 0.7.0

  • Minimal version of terra required is 1.8-10.
  • Remove metR from Suggests.
  • Improve handling of factors when several layers have different levels. This is done using terra::combineLevels() (terra >= 1.8-10). See https://stackoverflow.com/questions/79340152.
  • Now scales that uses limits truncate the legend when limits parameter is provided (#165 \@Fan-iX). Scales impacted:
    • scale_*_cross_blended_tint_c and scale_*_cross_blended_tint_b.
    • scale_*_hypso_tint_c and scale_*_hypso_tint_b.
    • scale_*_grass_c and scale_*_grass_b.
  • Now geom_spatraster() (and overall pivoting of SpatRaster is less strict with different layer classes: if several layers can be defined as numeric (i.e. double, integer and numeric) the pivoting (and therefore the plot) can be performed. This is consistent with tidyr::pivot_longer() behavior (https://stackoverflow.com/questions/79292989).

What's Changed

  • Bump dieghernan/cran-status-check from 1 to 2 by @dependabot in https://github.com/dieghernan/tidyterra/pull/163
  • Handling different levels on factor layers by @dieghernan in https://github.com/dieghernan/tidyterra/pull/164
  • Avoid tint color shift caused by the limits parameter in scale_*_hypso_tint_b and scale_*_hypso_tint_c by @Fan-iX in https://github.com/dieghernan/tidyterra/pull/165
  • Expand PR #165 to other scales, tests and document by @dieghernan in https://github.com/dieghernan/tidyterra/pull/166
  • Soften checks on mixed types by @dieghernan in https://github.com/dieghernan/tidyterra/pull/167

New Contributors

  • @Fan-iX made their first contribution in https://github.com/dieghernan/tidyterra/pull/165

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.6.2...v0.7.0

Scientific Software - Peer-reviewed - R
Published by dieghernan over 1 year ago

Using the tidyverse with terra objects - tidyterra 0.6.2

  • Add (limited) support for SpatGraticule (see terra::graticule()) #155.
  • New arguments in geom_spatraster_rgb(): stretch and zlim. See terra::plotRGB() for clarification.
  • geom_spatraster() suggests geom_spatraster_rgb() when a SpatRaster with RGB specification is detected (terra::has.RGB() is TRUE)

What's Changed

  • Add support for SpatGraticule by @dieghernan in https://github.com/dieghernan/tidyterra/pull/158
  • Add stretch and zlim to geomspatrasterrgb by @dieghernan in https://github.com/dieghernan/tidyterra/pull/160

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.6.1...v0.6.2

Scientific Software - Peer-reviewed - R
Published by dieghernan over 1 year ago

Using the tidyverse with terra objects - tidyterra 0.6.1

  • Add new scales:
    • grass_db and scale_fill_grass_c() family. This is an implementation of terra::map.pal(), that is the default palette for terra::plot() (> 1.7.78).
    • autoplot.SpatRaster() now uses also grass_db as the default palette.
    • Add scale_fill_princess_c() scale family.
  • Fix tests.

What's Changed

  • Add GRASS palettes by @dieghernan in https://github.com/dieghernan/tidyterra/pull/150

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.6.0...v0.6.1

Scientific Software - Peer-reviewed - R
Published by dieghernan almost 2 years ago

Using the tidyverse with terra objects - tidyterra 0.6.0

  • Requires ggplot2 (>= 3.5.0).
  • New methods for SpatVector objects:
    • pivot_longer.SpatVector() and pivot_wider.SpatVector().
    • fill.SpatVector().
  • New geom geom_spatraster_contour_text() implemented on top of isoband::isolines_grob() Experimental.
  • glimpse.SpatRaster() and glimpse.SpatVector() now displays information using ?tibble::print.tbl_df approach for the header and the footer. The body is still displayed transposed as of dplyr::glimpse(). See pillar::tbl_format_header() and pillar::tbl_format_footer() for examples.
  • as_sf() converts a SpatVector to a sf object with an additional tbl_df class for pretty printing.
  • fortify.SpatRaster() gains a new argument pivot that allows better integration with other ggplot2 geoms when pivoting. This is a wrapper of tidyr::pivot_longer().
  • Tidy documentation.
  • metR added to Suggests.

What's Changed

  • Add pivot methods by @dieghernan in https://github.com/dieghernan/tidyterra/pull/133
  • Add fill method by @dieghernan in https://github.com/dieghernan/tidyterra/pull/135
  • Improve glimpse method by @dieghernan in https://github.com/dieghernan/tidyterra/pull/136
  • Make docs tidy by @dieghernan in https://github.com/dieghernan/tidyterra/pull/138
  • Add geom_spatraster_contour_text by @dieghernan in https://github.com/dieghernan/tidyterra/pull/143
  • New argument on fortify by @dieghernan in https://github.com/dieghernan/tidyterra/pull/144
  • Doc update by @dieghernan in https://github.com/dieghernan/tidyterra/pull/145

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.5.2...v0.6.0

Scientific Software - Peer-reviewed - R
Published by dieghernan about 2 years ago

Using the tidyverse with terra objects - tidyterra 0.5.2

  • Adapt tests to ggplot2 3.5.0 (#129) @teunbrand.
  • Reduce package size, specially relevant in the external raster asia.tif.

What's Changed

  • Bump actions/upload-artifact from 3 to 4 by @dependabot in https://github.com/dieghernan/tidyterra/pull/128
  • Bump github/codeql-action from 2 to 3 by @dependabot in https://github.com/dieghernan/tidyterra/pull/127
  • Test broken with upcoming ggplot2 by @teunbrand in https://github.com/dieghernan/tidyterra/pull/129

New Contributors

  • @teunbrand made their first contribution in https://github.com/dieghernan/tidyterra/pull/129

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.5.1...v0.5.2

Scientific Software - Peer-reviewed - R
Published by dieghernan over 2 years ago

Using the tidyverse with terra objects - tidyterra 0.5.1

  • Adjust tests for as_sf() (#124).

What's Changed

  • Fix test to adapt to upcoming version of sf by @dieghernan in https://github.com/dieghernan/tidyterra/pull/125

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.5.0...v0.5.1

Scientific Software - Peer-reviewed - R
Published by dieghernan over 2 years ago

Using the tidyverse with terra objects - tidyterra 0.5.0

tidyterra has been accepted on JOSS. Please use the result of citation("tidyterra") or the following string:

Hernangómez, D. (2023). "Using the tidyverse with terra objects: the tidyterra package." Journal of Open Source Software, 8(91), 5751. ISSN 2475-9066, https://doi.org/10.21105/joss.05751

Other changes on this version:

  • Support for SpatRasters with a color table
    • autoplot.SpatRaster() can detect now SpatRasters with color tables.
    • geom_spatraster() can detect now SpatRasters with color tables.
    • New scales for plotting SpatRasters with color tables: scale_fill_coltab() and rest of family scales (colour).
    • tidyverse verbs keeps the associated coltab of a SpatRaster.
  • By default all the discrete scales of tidyterra now have the following setup: na.translate = FALSE.
  • By default, all the non-discrete (e.g. continuous or breaks) scales of tidyterra have now na.value = "transparent" (#120).
  • Enhanced glimpse.Spat() with meta-information on type of geometry, crs, etc.
  • New messaging interface thanks to cli package.

What's Changed

  • Add new features by @dieghernan in https://github.com/dieghernan/tidyterra/pull/104
  • Make na.value = "transparent" the default by @dieghernan in https://github.com/dieghernan/tidyterra/pull/122

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.4.1...v0.5.0

Scientific Software - Peer-reviewed - R
Published by dieghernan over 2 years ago

Using the tidyverse with terra objects - tidyterra 0.4.1

  • Release for JOSS paper. No relevant changes.

What's Changed

  • Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/dieghernan/tidyterra/pull/111

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.4.0...v0.4.1

Scientific Software - Peer-reviewed - R
Published by dieghernan over 2 years ago

Using the tidyverse with terra objects - tidyterra 0.4.0

  • This release focuses heavily on SpatVectors. The improvements have been:
    • New methods for SpatVectors:
      • glimpse.SpatVector()
      • arrange.SpatVector()
      • distinct.SpatVector()
      • inner_join.SpatVector(), left_join.SpatVector(), right_join.SpatVector() and full_join.SpatVector()
      • semi_join.SpatVector() and anti_join.SpatVector()
      • summarise.SpatVector()
      • rowwise.SpatVector()
      • group_by.SpatVector(),ungroup.SpatVector()
      • count.SpatVector(), tally.SpatVector()
      • bind_spat_cols(), bind_spat_rows()
    • Already implemented methods now works with dplyr::group_by().
    • Internal review of code. Now the methods does not rely on sf::st_as_sf() coercion. In fact coercion between object classes is avoided as much as possible.
  • New glimpse.SpatRaster() method for SpatRaster.
  • Other coercing and helper functions:
    • as_spatvector()
    • as_sf()
    • is_grouped_spatvector()

What's Changed

  • Add new methods for SpatVectors by @dieghernan in https://github.com/dieghernan/tidyterra/pull/82
  • Update docs and fix tests by @dieghernan in https://github.com/dieghernan/tidyterra/pull/85
  • Add bind methods for SpatVector by @dieghernan in https://github.com/dieghernan/tidyterra/pull/86
  • Adapt SpatVectors methods by @dieghernan in https://github.com/dieghernan/tidyterra/pull/87
  • Re-think group handling by @dieghernan in https://github.com/dieghernan/tidyterra/pull/90
  • [ImgBot] Optimize images by @imgbot in https://github.com/dieghernan/tidyterra/pull/91
  • Add rowwise for SpatVectors by @dieghernan in https://github.com/dieghernan/tidyterra/pull/92

New Contributors

  • @imgbot made their first contribution in https://github.com/dieghernan/tidyterra/pull/91

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.3.2...v0.4.0

Scientific Software - Peer-reviewed - R
Published by dieghernan about 3 years ago

Using the tidyverse with terra objects - tidyterra 0.3.2

  • Fix a bug on pull_crs() that returned "NA" on sf objects with any field equal to NA (#74).
  • Improve docs on scales_* (#73) .
  • Remove dependency on crayon package (superseded) in favor of cli.
  • Remove tidyverse from Suggests.

What's Changed

  • Fix pull_crs by @dieghernan in https://github.com/dieghernan/tidyterra/pull/75
  • Update dots by @dieghernan in https://github.com/dieghernan/tidyterra/pull/77
  • Remove crayon package by @dieghernan in https://github.com/dieghernan/tidyterra/pull/78
  • Avoid GDAL Warn by @dieghernan in https://github.com/dieghernan/tidyterra/pull/79
  • Remove tidyverse from DESCRIPTION by @dieghernan in https://github.com/dieghernan/tidyterra/pull/80

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.3.1...v0.3.2

Scientific Software - Peer-reviewed - R
Published by dieghernan over 3 years ago

Using the tidyverse with terra objects - tidyterra 0.3.1

  • New ggplot2 methods added:

    • Methods for autoplot.SpatVector(), autoplot.SpatRaster().

      • autoplot.SpatRaster() now is smarter on identifying the type of plot to produce. Can still be overridden with parameters.
    • Methods for fortifying SpatRasters and SpatVectors: fortify.SpatRaster(), fortify.SpatVector().

  • Three additional palettes are included on hypso.colors(): "artic", "meyers" and "nordisk-familjebok".

  • Added colour scales to all palettes: scale_colour_*.

  • Remove use of ggplot2::aes_string().

  • Adapt geom_spatraster_contour() and geom_spatraster_contour_filled() to the changes introduced in ggplot2 (3.4.0), most notably the adoption of linewidth = .2, by default.

What's Changed

  • Add new palettes to hypso.colors() by @dieghernan in https://github.com/dieghernan/tidyterra/pull/56
  • Add fortify methods by @dieghernan in https://github.com/dieghernan/tidyterra/pull/57
  • Add color scales by @dieghernan in https://github.com/dieghernan/tidyterra/pull/58
  • pkgdown build on ubuntu by @dieghernan in https://github.com/dieghernan/tidyterra/pull/59
  • Bump actions/checkout from 2 to 3 by @dependabot in https://github.com/dieghernan/tidyterra/pull/60
  • Try best practices with non-standard evaluation by @dieghernan in https://github.com/dieghernan/tidyterra/pull/63

New Contributors

  • @dependabot made their first contribution in https://github.com/dieghernan/tidyterra/pull/60

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.3.0...v0.3.1

Scientific Software - Peer-reviewed - R
Published by dieghernan over 3 years ago

Using the tidyverse with terra objects - tidyterra 0.3.0

  • Package back to CRAN.

  • Libraries dplyr, tidyr, tibble are not attached by default. Needed functions are reexported instead.

  • Improvements on geom_spatraster():

    • Now in geom_spatraster() is possible to avoid the default fill of the layer using geom_spatraster(fill = NA) or geom_spatraster(aes(fill = NULL)).
    • aes(fill = ggplot2::after_stat()) now works on geom_spatraster().
    • Internal: Better handling of aes() and layers
  • Add new function stat_spatraster().

  • Reduce the size of external files.

What's Changed

  • fill aesthetic in geom_spatraster() can be deactivated by @dieghernan in https://github.com/dieghernan/tidyterra/pull/50
  • Add stat_spatraster by @dieghernan in https://github.com/dieghernan/tidyterra/pull/51
  • Docs by @dieghernan in https://github.com/dieghernan/tidyterra/pull/52
  • Prepare for CRAN by @dieghernan in https://github.com/dieghernan/tidyterra/pull/55

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.2.2...v0.3.0

Scientific Software - Peer-reviewed - R
Published by dieghernan over 3 years ago

Using the tidyverse with terra objects - tidyterra 0.2.2

  • Changes on how dplyr, tibble and tidyr are attached. Now these packages are listed on 'Depends' and are attached before tidyterra when library or require is called. Messages on load can be suppressed with suppressPackageStartupMessages(library(tidyterra)).

What's Changed

  • Remove startup messages by @dieghernan in https://github.com/dieghernan/tidyterra/pull/47

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.2.1...v0.2.2

Scientific Software - Peer-reviewed - R
Published by dieghernan over 3 years ago

Using the tidyverse with terra objects - tidyterra 0.2.1

  • Now geom_spatraster_rgb() works with facet_wrap() (#35)
  • Improve facetting when the plot facets are created using non-Spat* layers.
  • Precompute vignettes.

What's Changed

  • Add facetting support for geomspatrasterrgb() by @dieghernan in https://github.com/dieghernan/tidyterra/pull/36
  • Improve facetting for contours by @dieghernan in https://github.com/dieghernan/tidyterra/pull/38

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.2.0...v0.2.1

Scientific Software - Peer-reviewed - R
Published by dieghernan over 3 years ago

Using the tidyverse with terra objects - tidyterra 0.2.0

  • Recreate extdata/volcano2.tif using official DEM information from New Zealand. Source: Auckland LiDAR 1m DEM (2013).

  • Add volcano2 dataset.

  • Fix errors on slice_min() and slice_max() for SpatRasters (#20). Also add a new parameter na.rm.

  • Add new gradient scales for use on hypsometry:

    • scale_fill_hypso_c()
    • scale_fill_whitebox_c()
    • scale_fill_wiki_c()
    • scale_fill_cross_blended_c()
  • Add new asia.tif file on extdata.

What's Changed

  • Update README by @dieghernan in https://github.com/dieghernan/tidyterra/pull/17
  • Rebuild volcano2 tif by @dieghernan in https://github.com/dieghernan/tidyterra/pull/18
  • Add volcano2 dataset by @dieghernan in https://github.com/dieghernan/tidyterra/pull/19
  • Fix slice_min/max by @dieghernan in https://github.com/dieghernan/tidyterra/pull/21
  • Add new topo palette by @dieghernan in https://github.com/dieghernan/tidyterra/pull/22
  • Add hypsometric tints by @dieghernan in https://github.com/dieghernan/tidyterra/pull/24
  • Add hypsometric tints by @dieghernan in https://github.com/dieghernan/tidyterra/pull/25
  • Add cross blend colors by @dieghernan in https://github.com/dieghernan/tidyterra/pull/26
  • Adjust palettes by @dieghernan in https://github.com/dieghernan/tidyterra/pull/27
  • Improve docs by @dieghernan in https://github.com/dieghernan/tidyterra/pull/28
  • Update scales by @dieghernan in https://github.com/dieghernan/tidyterra/pull/29
  • Add new scales by @dieghernan in https://github.com/dieghernan/tidyterra/pull/31
  • Remove ptr reference by @dieghernan in https://github.com/dieghernan/tidyterra/pull/32

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.1.0...v0.2.0

Scientific Software - Peer-reviewed - R
Published by dieghernan almost 4 years ago

Using the tidyverse with terra objects - tidyterra 0.1.0

  • Add DOI.

  • CRAN release.

Full Changelog: https://github.com/dieghernan/tidyterra/compare/v0.0.1...v0.1.0

Scientific Software - Peer-reviewed - R
Published by dieghernan about 4 years ago

Using the tidyverse with terra objects - tidyterra 0.0.1

  • Improvements on performance:

    • Conversion to tibble is avoided as much as possible.
    • Internally use data.table instead of tibbles.
    • The package is compatible with dtplyr.
  • as_spatraster() handles tibbles with characters and factors.

  • Simplification and tests for geom_spatraster() and geom_spatraster_rgb().

  • New methods:

    • pull()
    • transmute()
    • rename()
  • New geoms:

    • geom_spatraster_contour() family.

Scientific Software - Peer-reviewed - R
Published by dieghernan about 4 years ago