R/palette.R
palette_set.Rd
This function generates an HCL palette for visualizing a small set of distributions (i.e., eight or fewer) that are not ordered in a linear or cyclical sequence (e.g., a set of utilization distributions describing space use by five separate individuals in the same population or a set of four species distributions that depend on similar food resources).
palette_set(x, custom_hues)
RasterStack or integer describing the number of layers for which colors need to be generated.
vector of integers between -360 and 360 representing
hues in the color wheel. For further details, consult the documentation
for colorspace::rainbow_hcl. The length of the vector must equal the
number of layers described by x
. Hues are assigned to layers in order.
A data frame with three columns:
layer_id
: integer identifying the layer containing the maximum
intensity value; mapped to hue.
specificity
: the degree to which intensity values are unevenly
distributed across layers; mapped to chroma.
color
: the hexadecimal color associated with the given layer and
specificity values.
palette_timecycle for cyclical sequences of distributions and palette_timeline for linear sequences of distributions.
Other palette:
palette_timecycle()
,
palette_timeline()
# load elephant data
data(elephant_ud)
# generate hcl color palette
pal <- palette_set(elephant_ud)
head(pal)
#> specificity layer_id color
#> 1 0 1 #6A6A6A
#> 2 0 2 #6A6A6A
#> 3 1 1 #696B6B
#> 4 1 2 #6C6A6A
#> 5 2 1 #686B6B
#> 6 2 2 #6D6A6A
# visualize the palette in HCL space with colorspace::hclplot
library(colorspace)
#>
#> Attaching package: ‘colorspace’
#> The following object is masked from ‘package:raster’:
#>
#> RGB
hclplot(pal[pal$specificity == 100, ]$color)
#> Warning: the standard deviation is zero