Skip to contents

version 0.6-8

version 0.6-7

CRAN release: 2024-11-07

  • st_extract() fix if points coincide with boundary grid cell centers and bilinear interpolation is used; #720

  • st_extract() if used with GDAL 3.10.0 uses InterpolateAtPoints, allowing for cubic and cubicspline interpolators (requiring sf >= 1.0-19).

  • Ops.stars() (math ops) now also recycle arrays in the first argument; #718

  • c.stars() verifies semantic equivalence of objects’ CRS; #703

  • initial support for read_mdim() to work with proxy = TRUE; #659

version 0.6-6

CRAN release: 2024-07-16

version 0.6-5

CRAN release: 2024-04-04

version 0.6-4

CRAN release: 2023-09-11

  • plot.stars() has a fill argument that shifts unused plotting space between sub-maps to the bottom or right side of the plotting area

  • in plot.stars(), the key.width default is sensitive to par("ps"), the pointsize graphics parameter

  • plot.stars() and image.stars() are sensitive to cex.axis, for axes and key (requires sf >= 1.0-14); #642

  • move lwgeom dependency to Suggests; using st_transform_proj() on vector data cubes requires loading lwgeom first

version 0.6-3

CRAN release: 2023-08-11

version 0.6-2

CRAN release: 2023-07-12

  • split.stars() accepts stars objects with multiple attributes; #635

  • [.stars() supports NA values in dimension ranges for vector geometry (sfc) dimensions, resulting in empty geometries

  • st_extract() supports extracting points values from curvilinear grids (when not proxy); #632

  • read_mdim() reads curvilinear rasters (geolocation arrays), so far only at full extent/resolution

  • st_as_stars.stars() accepts curvilinear argument with lon/lat array names present in .x

  • consistently use OGC:CRS84 instead of EPSG:4326

  • setting values = NULL in st_set_dimensions() removes dimension values

  • more gracefully handle plotting of global coverage curvilinear grids; #632

  • image.stars() plots images (e.g. of cross sections) when x and/or y are singular or absent; #628

  • st_as_stars.cubble_df() adds conversion from cubble; cubble::as_cubble() methods converts back

  • [<-.stars() accepts for i an indicator (numeric length character) to the array to be replaced; #626

  • plot.stars() gains an argument key.lab to set the legend key label (requires sf >= 1.0-13)

version 0.6-1

CRAN release: 2023-04-06

  • remove rgdal dependency

  • read_stars() fixes combining bands with different block sizes; #623

  • st_warp() gets (proper) default value for threshold; #618

  • read_mdim() reads “raster” with single pixel (as a point)

  • [.stars(), as in r[x] allows x to be a logical stars object

  • [<-.stars_proxy() clones environment, so that after r[r > 100] = NA we don’t get infinite recursion when realizing r

  • read_stars() avoids reading a raster twice to determine how to choose proxy; proxy can now be set as (and defaults to) the number of cells (bands * rows * columns) above which data will not be read in memory but returned as stars_proxy object; #609

  • fix using RasterIO in read_stars() when proxy=TRUE; #608

  • plot.stars() hook function can handle arguments row, col, nrow, ncol, nr, value and bbox; #600

  • fix handling of categorical rasters with colors but without category labels; #595, fallout of #565

  • fix subsetting of proxy objects over a time range; #596

version 0.6-0

CRAN release: 2022-11-21

  • write_stars() writes scaled and/or shifted values when using argument scale_offset; #589

  • aggregate.stars_proxy() implements aggregation with non-spatial by objects (lazily)

  • fix [.stars_proxy() when selecting dimension 3 and higher; #561

  • in plot.stars(), col can also be a palette function

  • st_res() returns spatial resolutions, and optionally all dimension resolutions; #557 thanks to Krzysztof Dyba

  • read_stars() shortens band or array names that contain a common start or ending, unless names would become empty or shorten=FALSE was set; e.g. shorten="B" puts a B before shortened array names

  • printing stars dimension tables omits fields with only NULL or NA values, unless print(..., all = TRUE) is given

  • improve reading categorical rasters, which now avoids calling factor(); #565 thanks to Krzysztof Dyba

  • read_mdim() will read bounds arrays for coordinates using the bounds attribute, and accepts a bounds argument to specify them when that attribute is missing

  • time() returns time stamps of a time dimension

  • st_cells() returns the cell index for a set of point coordinates, provided as sf or sfc object; #558

  • reading & writing vector data cubes: read_mdim() reads CF compliant vector geometries, and reconstructs them into an sfc dimension; write_mdim() writes them.

  • write_mdim() uses GDAL multidimensional array API;

  • read_mdim() uses arguments offset, count and step to read sub-arrays or strided arrays (requires sf >= 1.0-9)

version 0.5-6

CRAN release: 2022-07-21

  • export read_mdim(), a reader using GDAL’s multidimensional array API (for sf <= 1.0-8)

  • remove tos_O1_2001-2002.nc from packaged datasets to keep source package size below 5 Mb

  • as.POSIXct.stars() converts PCICt dimensions to POSIXct values.

  • improve handling of PCICt 360 or 365 day calendars; read them in read_mdim (requires sf >= 1.0-9)

  • read_stars() reads factor levels better from attribute table; #484 thanks to @ailich

  • read_stars() puts band names from band_meta DESCRIPTION= tags into values;

  • improve handling of categorical rasters, and their exchange with terra; #484

  • plot() handles auto colors better for factor arrays

  • read_ncdf() handles units more formally in setting crs; #533

  • print message that dimensions of proxy objects do not reflect unevaluated operations; #530

  • passing na.action = na.omit to geom_stars() removes NA values; #532

  • read_stars() detects curvilinear grids automatically; #513

  • st_warp() warps curvilinear grids (using Euclidean distances only on coordinates); #513

  • Ops.stars() errors when (common) dimension are not identical; #506

  • guess_raster() accepts empty rows/columns and sparse grids; #509

  • speed up rgb plotting; #503

  • Added a new helper function st_tile() to specify the block parameters (nXOff, nYOff, nXsize, nYSize) required by RasterIO argument in read_stars(); #492 thanks to Krzysztof Dyba

version 0.5-5

CRAN release: 2021-12-19

version 0.5-4

CRAN release: 2021-11-19

version 0.5-3

CRAN release: 2021-06-08

  • read_stars() accepts a function (or list with functions) as first argument, allowing for saving stars objects that read from package directories resolving platform-dependent paths at run-time

  • handle categorical rasters starting at value 0 (by adding 1, and warning); #428

  • add %in% method; #424

  • read_stars() gains an argument tolerance to control tolerance in dimension value comparisons; #414

  • binary Ops (like +, -, * etc.) work for stars_proxy objects; #390

  • st_rasterize() rasterizes multiple attributes, and handles factors (when sf >= 0.9-9)

  • write_stars() deals better with stars_proxy objects; #404

  • fix regression in reading some stars_proxy objects; #379

  • add [<- (partially) and is.na methods for stars_proxy objects; #402

  • add replace_na() methods; #402

version 0.5-2

CRAN release: 2021-03-17

  • read and write factor levels as GDAL category names; write color table; #392

  • handle normalize_path for choosing to proxy; #391

  • ignore units when there are different units across bands of a subdataset

  • speed up st_rgb() using faster st_apply() approach; #315, #390

  • improve handling of crs in Spatial objects (avoid loss of wkt comments)

  • correctly write band subsets for smaller proxy objects; #291

  • write arbitrarily cropped proxy objects; #291

  • speed up st_apply() when a function is provided that works on chunks at a time; #390

  • warn when breaks = “quantile” results in a single class; #388

  • fix [ bug selecting bands in proxy objects; #388

  • for stars_proxy objects, write_stars() writes all objects into a multi-layer file; #385

  • multi-file proxy objects can be st_warp()ed with use_gdal = TRUE; #385

version 0.5-1

CRAN release: 2021-01-25

  • fix weird GDAL-related bug in stars2 vignette

  • read_ncdf() does not take time as mid-points of regular intervals, but as starting points; #378

version 0.5-0

CRAN release: 2021-01-19

  • fix handling of rasters with color tables; #375

  • st_apply() and other methods for stars_proxy objects handle … ; #374

  • add st_bbox(), st_crs() methods for terra’s SpatVector objects; https://github.com/r-tmap/tmap/issues/536

  • add st_bbox(), st_crs() and st_as_stars() methods for terra’s SpatRaster objects; https://github.com/r-tmap/tmap/issues/536

  • allow for multi-resolution attributes in stars_proxy objects (e.g., all gray scale sentinel-2 bands); see vignettes 2 and 7 for examples.

  • plot() defaults to a categorical color scale when plotting a factor variable; https://github.com/r-tmap/tmap/issues/526

  • st_extract() extracts space-time points if time_column is specified, and handles time intervals; #352

  • add [[<-.stars method, which is now called by $<-.stars, so that array names can be set programmatically

  • add transmute() methods

  • plot.stars() calls droplevels if a factor array has any NA levels; #339

  • read_stars() reads NaNs as NA; #333

  • improve st_extract() method for both stars and stars_proxy objects; interpolation options are reduced to bilinear; #322, #279, #290

  • better handle categorical rasters that do not start at value 1; #329

  • plot layout can be controlled with mfrow = c(nr, nc) argument

  • stars_proxy objects have a normalized path; #331

  • cropping or selecting with bbox treats cells always as small polygons; #330

  • add faster st_extract() method for stars objects; #322

  • added vignette: “How raster functions map to stars functions”, by Sebastien Rochette; #122, #325

  • fix bug in dimension values field when downsampling; #324

  • write_stars() also writes out band names; #323

  • add rgdal to Suggests:

  • each call_list entry of a stars_proxy object carries its proper calling environment; #309

  • st_as_sf.stars() copes with zero attribute (empty) stars objects

  • add st_set_bbox() generic, to set raster extent, motivated by #315

  • set up tic, with great help from @pat-s, #313

  • get rid of more proj4strings for representing coordinate reference systems; #312

  • as(x, “Spatial”) correctly handles from dimension values different from one

  • read_stars() now sets the BANDNAME GDAL metadata item, or else the band’s GetDescription() as the band’s dimension values

  • st_as_stars.data.frame() reads simple tables (non-raster data) if dims has length less than 2

  • band descriptions are in the band dimension values

  • dimension tables are simpler, and are shown properly in Rstudio

  • st_rgb() gains a probs argument, to cut off and stretch based on quantiles

  • as(x, "Raster") merges multiple attributes before converting to raster brick

version 0.4-3

CRAN release: 2020-07-08

version 0.4-2

CRAN release: 2020-07-01

version 0.4-1

CRAN release: 2020-04-07

version 0.4-0

CRAN release: 2019-10-10

  • plot() now uses all data to figure out breaks, in order to also find extremes; #216

  • st_mosaic() creates mosaics from spatially disjoint rasters; #210

  • #205 large refactoring of read_ncdf, by David Blodgett and Mike Sumner, affecting #199, #89, #30, #86, #175

  • allow for funny units like m s**-1; #201

  • add contour() method for stars objects; #196

  • plot uses rasterImage by default if available; #194

  • the x and y raster dimensions can be set and unset with xy argument in st_set_dimensions; #190

  • retain factor levels with dimension values when set in st_set_dimensions; #188

  • add conversion from stars_proxy to Raster: #193

  • make plotting of multiple curvilinear grids work

  • plot by default no cell borders in case of curvilinear, rotated or sheared grids

  • robustify handling of units

  • allow read_ncdf() to ignore bounds

  • scale was applied wrongly on multi-band images; #189, this requires sf >= 0.7-5

  • .nc is now recognized correctly by write_stars and will write a NetCDF file; #186

  • [ subset now works correctly with negative or logical indices; #184, #185

  • NA values for float32 grids are now correctly detected; #182, this requires sf >= 0.7-5

  • cropping of a stars_proxy object now works; #179

  • st_apply() can now loop over Raster layers; examples in #176

version 0.3-1

CRAN release: 2019-04-23

  • st_as_stars.bbox now has an ncells and pretty argument, to better choose default raster dimensions

  • geom_stars now works with stars_proxy objects, but needs downsample to be set; #21

  • NA values in Float32 rasters are now read correctly with read_stars; #182

  • handle bounds, when given, in read_ncdf

  • provide time parsing (POSIXct, PCICt) for read_ncdf; #115

version 0.3-0

CRAN release: 2019-02-24

  • add st_area method to return raster grid cell sizes; #99

  • fix st_warp with use_gdal=TRUE, allowing for multi-band warps

  • add st_get_dimension_values to get the values of a particular dimension (if meaningful); #100

  • allow for setting intervals as dimension values; see examples of st_dimensions

  • add st_contour, and clean up st_as_sf; #99

  • experimental color table support; https://github.com/r-spatial/mapview/issues/208

  • rewrote vignettes, added vignettes; #99

  • deprecate st_write.stars for write_stars; #96

  • use “native” R array-factor support

  • support for PCICt 360- and 365-day calendars; #29

  • remove import of ncdf4 in favor of RNetCDF, now in line with practice in ncmeta package. Thanks to David Blodgett for motivation and testing (see #87, #94).

  • st_as_sf uses date/time column names when appropriate

  • allow missing trailing comma’s when subsetting: a[1,,] and a[1,] now do the same.

  • move rlang to Imports: ; rewrite [ subset using rlang.

  • add conversion to and from Spatial* classes, including the gridded ones, taking care of factor variables

  • depend on sf 0.7-2

  • add logz support for log-scale keys to plot and image

version 0.2-0

CRAN release: 2018-10-25

  • vignettes now use an external package, starsdata, for larger dataset examples

  • support [<-.stars e.g. to mask out values; support is.na.stars to replace NA masks

  • support cut methods and factor arrays (plot, subset); #56

  • add st_rasterize, which uses GDALRasterize to rasterize an sf object; #13

  • st_as_sf.stars now uses GDAL(F)Polygonize when give a regular or sheared grid grid cells are not points, and returns contour bands using GDALContourGenerateEx (requiring GDAL 2.4.0) in case cells are points; #13

  • support curvilinear grids; see #54 and the data_model vignette

  • add vignette about how stars_proxy objects work

  • stars_proxy objects defer processing of st_apply jobs until after subsampling; #50

  • allow reading sections of a raster, raster at a lower resolution, selected bands; #48

  • allow reading vectors (arrays) with more than 2^31 elements; #48

  • fold all higher dimensions into the third dimension before coercing to Raster; #40

version 0.1-1

CRAN release: 2018-07-25

  • add meta data reader to read_stars

version 0.1-0

  • add merge (merge attributes into array dimension) and split (split dimension over attributes)

  • interface to sf, raster and spacetime

  • improve plotting

  • handle logical arrays in plot

  • add st_apply, analogous to apply

  • add cropping/masking when used as x[buf] with buf an sf, sfc or bbox object; masking when x[buf, crop = FALSE]

  • add Ops (+,-,/ etc) and Math (sqrt, pow, sin etc) methods

  • add dimnames and dimnames<- methods for stars objects

  • downsample large grids to only plot pixels actually shown

  • can plot rectilinear grids (but will plot rgb images as regular grids)

  • rgb argument to image works

  • [ array-like subsetting works; first index is attribute selector

version 0.0

  • interface the 9 C++ gdal utils through gdal_utils() (now part of sf)