Type: | Package |
Version: | 0.2.0 |
Title: | Distinct Colour Palettes Based on 'iwanthue' |
Description: | Creating effective colour palettes for figures is challenging. This package generates and plot palettes of optimally distinct colours in perceptually uniform colour space, based on 'iwanthue' http://tools.medialab.sciences-po.fr/iwanthue/. This is done through k-means clustering of CIE Lab colour space, according to user-selected constraints on hue, chroma, and lightness. |
Date: | 2019-12-01 |
Depends: | R (≥ 3.2.0) |
Imports: | colorspace, methods |
Suggests: | ggplot2 |
URL: | https://github.com/johnbaums/hues |
BugReports: | https://github.com/johnbaums/hues/issues |
License: | LGPL (≥ 3) |
LazyData: | true |
RoxygenNote: | 7.0.1 |
NeedsCompilation: | no |
Packaged: | 2019-11-30 14:44:40 UTC; jbau |
Author: | John Baumgartner |
Maintainer: | John Baumgartner <johnbaums@gmail.com> |
Repository: | CRAN |
Date/Publication: | 2019-12-01 17:30:02 UTC |
hues: Generate optimally distinct colour palettes
Description
This package generates and plot palettes of optimally distinct colours in perceptually uniform colour space, based on iwanthue. This is done through k-means clustering of CIE Lab colour space, according to user-selected constraints on hue, chroma, and lightness.
References
iwanthue scales to use with ggplot2
Description
These functions allow you to use iwanthue()
generated palettes with
ggplot2
plots. You need ggplot2
installed for these to work. Note these
only work with discrete scales.
Usage
scale_colour_iwanthue(
...,
hmin = 0,
hmax = 360,
cmin = 0,
cmax = 180,
lmin = 0,
lmax = 100,
random = FALSE,
aesthetics = "colour"
)
scale_color_iwanthue(
...,
hmin = 0,
hmax = 360,
cmin = 0,
cmax = 180,
lmin = 0,
lmax = 100,
random = FALSE,
aesthetics = "colour"
)
scale_fill_iwanthue(
...,
hmin = 0,
hmax = 360,
cmin = 0,
cmax = 180,
lmin = 0,
lmax = 100,
random = FALSE,
aesthetics = "fill"
)
Arguments
... |
Arguments to pass on to |
hmin |
Numeric, in the range |
hmax |
Numeric, in the range |
cmin |
Numeric, in the range |
cmax |
Numeric, in the range |
lmin |
Numeric, in the range |
lmax |
Numeric, in the range |
random |
Logical. If |
aesthetics |
Character string or vector of character strings listing the
name(s) of the aesthetic(s) that this scale works with. This can be useful,
for example, to apply colour settings to the colour and fill aesthetics at
the same time, via |
Value
A ScaleDiscrete
object that can be added to a ggplot
object.
Author(s)
Russell Dinnage r.dinnage@gmail.com
Examples
if (require('ggplot2')) {
ggplot(iris, aes(x=Petal.Width, y=Petal.Length)) +
geom_point(aes(color=Species), size=10) +
scale_colour_iwanthue()
ggplot(iris, aes(x=Petal.Width, y=Petal.Length)) +
geom_point(aes(color=Species), size=10) +
scale_colour_iwanthue(hmax = 90)
}
Generate a colour palette by k-means clustering of CIE Lab colour space.
Description
Generate a palette of distinct colours through k-means clustering of CIE Lab colour space.
Usage
iwanthue(
n,
hmin = 0,
hmax = 360,
cmin = 0,
cmax = 180,
lmin = 0,
lmax = 100,
plot = FALSE,
random = FALSE
)
Arguments
n |
Numeric. The number of colours to generate. |
hmin |
Numeric, in the range |
hmax |
Numeric, in the range |
cmin |
Numeric, in the range |
cmax |
Numeric, in the range |
lmin |
Numeric, in the range |
lmax |
Numeric, in the range |
plot |
Logical. Should the colour swatches be plotted (using
|
random |
Logical. If |
Details
Note that iwanthue
currently doesn't support hmin
greater than
hmax
(which should be allowed, since hue is circular).
Value
A vector of n
colours (as hexadecimal strings), representing
centers of clusters determined through k-means clustering of the CIE Lab
colour space delimited by hmin
, hmax
, cmin
, cmax
, lmin
and
lmax
.
References
Examples follow those presented at iwanthue - colors for data scientists
See Also
Examples
iwanthue(5)
iwanthue(5, plot=TRUE)
iwanthue(5, 0, 240, 0, 24, 0, 100, plot=TRUE) # shades
iwanthue(5, 0, 360, 0, 54, 67, 100, plot=TRUE) # pastel
iwanthue(5, 0, 360, 54, 180, 27, 67, plot=TRUE) # pimp
iwanthue(5, 0, 360, 36, 180, 13, 73, plot=TRUE) # intense
iwanthue(3, 0, 300, 60, 180, 73, 100, plot=TRUE) # fluoro
iwanthue(3, 220, 260, 12, 150, 0, 53, plot=TRUE) # blue ocean
Plot colour swatches for a vector of colours
Description
Plot named colour swatches for a vector of colours.
Usage
swatch(x)
Arguments
x |
a vector of colours, specified as: colour names (i.e. colour names
returned by |
Value
NULL
. The colour swatch is plotted to the active plotting device.
See Also
Examples
swatch(colours()[1:10])
swatch(1:4)
swatch(iwanthue(5))