geom_flame {RmarineHeatWaves} | R Documentation |
Create 'Flame' Ploygons.
Description
This function will create polygons between two lines. If given a
temperature and theshold time series, like that produced by detect
,
the output will meet the specifications of Hobday et al. (2016) shown as
'flame polygons.' If one wishes to plot polygons below a given threshold, and not
above, switch the values being fed to the y
and y2
aesthetics. This function differs in use from event_line
in that it must be created as a ggplot
'geom' object. The benefit
of this being that one may add additional information to the figure as geom
layers to ggplot2 graphs as may be necessary.
Usage
geom_flame(mapping = NULL, data = NULL, stat = "identity",
position = "identity", ..., na.rm = FALSE, show.legend = NA,
inherit.aes = TRUE)
Arguments
mapping |
Set of aesthetic mappings created by |
data |
The data to be displayed in this layer. There are three options: If NULL, the default, the data is inherited from the plot data as specified
in the call to A data.frame, or other object, will override the plot data. All objects will
be fortified to produce a data frame. See A function will be called with a single argument, the plot data. The return
value must be a |
stat |
The statistical transformation to use on the data for this layer, as a string. |
position |
Position adjustment, either as a string, or the result of a call to a position adjustment function. |
... |
other arguments passed on to |
na.rm |
If |
show.legend |
Logical. Should this layer be included in the legends? |
inherit.aes |
If |
Aesthetics
geom_flame
understands the following aesthetics (required aesthetics
are in bold):
-
x
-
y
-
y2
-
colour
-
fill
-
size
-
alpha
-
linetype
Author(s)
Robert W. Schlegel
References
Hobday, A.J. et al. (2016), A hierarchical approach to defining marine heatwaves, Progress in Oceanography, 141, pp. 227-238, doi: 10.1016/j.pocean.2015.12.014
See Also
event_line
for a non-ggplot2 based flame function.
Examples
ts_dat <- make_whole(sst_WA)
res <- detect(ts_dat, climatology_start = "1983-01-01",
climatology_end = "2012-12-31")
mhw <- res$clim
mhw <- mhw[10580:10690,]
## Not run:
require(ggplot2)
ggplot(mhw, aes(x = t, y = temp)) +
geom_flame(aes(y2 = thresh_clim_year)) +
geom_text(aes(x = as.Date("2011-02-01"), y = 28,
label = "That's not a heatwave.\nThis, is a heatwave.")) +
xlab("Date") + ylab(expression(paste("Temperature [", degree, "C]")))
## End(Not run)