All images in the vignette now have alt text.
Minor documentation improvements.
New functions date_start()
and
date_end()
for accessing the boundary elements of
<grates>
objects.
New function %during%
for testing whether a scalar
date is contained within the range (inclusive) of a
<grates>
object.
scale_x_grates_isoweek()
)
gain a breaks
argument to allow exact specification of
breaks.For the first major release of grates a significant refactor has been undertaken that builds upon lessons learnt over the last two years. Whilst we have tried to limit breaking changes some functionality has been removed and some function parameters altered (see details below):
<grates_month>
objects are now always stored
relative to the UNIX epoch. This is equivalent to setting
origin = 0
in the previous release. Calling the function
with an origin
argument will now error.
Trying to create a <grates_month>
object with
n
set to 1 will now error. Uses are encouraged to use
<grates_yearmonth>
for this case.
<grates_int_period>
is now a defunct as it did
not fit with the scope of the package (i.e grouped dates, not grouped
integers). In particular the int_period()
,
as_int_period()
and is_int_period()
will now
error on use.
The origin
parameter from
<grates_period>
as been renamed to
offset
to better reflect its usage. Users will need to
update uses of period()
, as_period()
and
scale_x_grates_period()
to reflect this.
as_yearweek()
no longer parsers character strings of
the form “YYYY-Www” (e.g. “2020-W01”).
Constructors yearweek()
and isoweek()
and epiweek()
now allow construction of grates objects
directly from year and week integer vectors. yearmonth()
and yearquarter()
constructors have been similarly changed
to allow construction from year and month/quarter integer
vectors.
The old incarnation of direct constructors now begin with a
new_
prefix (e.g. new_month()
,
new_yearweek()
, new_epiweek()
, …). This is to
distinguish them from more user friendly constructors that we have
introduced (see above).
A new yearmonth
class
(<grates_yearmonth>
) and associated functions have
been introduced. This object is similar to what was previously obtained
via a call of month(x, n = 1L, origin = 0L)
(now defunct -
see above).
New isoweek
and epiweek
classes
(<grates_isoweek>
and
<grates_epiweek>
respectively) and associated
functions. Internally these are similar to the corresponding
<grates_yearweek>
objects but with a marginally more
efficient implementation.
is.numeric()
methods for grates objects previously
returned FALSE. Calls to these methods now dispatch to the default
implementation based on the underlying type and should now return
TRUE.seq()
methods now implemented for all grates
objects.Conversion functions now preserve names.
Bug fixes for cast functions operating on objects of the same class but with different attributes.
This is a breaking release that changes the underlying implementations of the different grate constructors and associated scales for ggplot2. There has also been some renaming of function arguments to bring greater consistency across packages.
We now make more use of the high level API introduced by the clock package for working with R’s date and date-time types.
scale_x_period()