A graphical user interface (GUI) for viewing, manipulating, and choosing HCL color palettes.
choose_palette(pal = diverge_hcl, n = 7L, parent = NULL, gui = "tcltk")
hclwizard(n = 7L, gui = "shiny", shiny.trace = FALSE)
function; the initial palette, see ‘Value’ below.
Only used if gui="tcltk"
.
integer; the initial number of colors in the palette.
tkwin; the GUI parent window.
Only used if gui="tcltk"
.
character; GUI to use. Available options are
tcltk
and shiny
, see ‘Details’ below.
boolean, default FALSE
. Used
for debugging if gui="shiny"
.
Returns a palette-generating function with the selected arguments. Thus, the returned function takes an integer argument and returns the corresponding number of HCL colors by traversing HCL space through interpolation of the specified hue/chroma/luminance/power values.
Computes palettes based on the HCL (hue-chroma-luminance) color
model (as implemented by polarLUV
). The GUIs interface
the palette functions
rainbow_hcl
for qualitative palettes,
sequential_hcl
for sequential palettes with a single hue,
heat_hcl
for sequential palettes with multiple hues, and
diverge_hcl
for diverging palettes (composed from two single-hue
sequential palettes).
Two different GUIs are implemented and can be selected using the
function input argument gui
("tcltk"
or "shiny"
).
Both GUIs allows for interactive modification of the arguments of the respective
palette-generating functions, i.e.,
starting/ending hue (wavelength, type of color),
minimal/maximal chroma (colorfulness),
minimal maximal luminance (brightness, amount of gray), and
a power transformations that control how quickly/slowly chroma and/or
luminance are changed through the palette. Subsets of the parameters
may not be applicable depending on the type of palette chosen. See
rainbow_hcl
and Zeileis et al. (2009) for a more detailed
explanation of the different arguments. Stauffer et al. (2015) provide
more examples and guidance.
Optionally, active palette can be illustrated by using a range of examples such as a map, heatmap, scatter plot, perspective 3D surface etc.
To demonstrate different types of deficiencies, the active palette may
be desaturated (emulating printing on a grayscale printer) and, if the
dichromat
package is available, collapsed to
emulate different types of color-blindness (without red-green or green-blue
contrasts).
Zeileis A, Hornik K, Murrell P (2009). Escaping RGBland: Selecting Colors for Statistical Graphics. Computational Statistics & Data Analysis, 53, 3259--3270. 10.1016/j.csda.2008.11.033 Preprint available from https://eeecon.uibk.ac.at/~zeileis/papers/Zeileis+Hornik+Murrell-2009.pdf.
Stauffer R, Mayr GJ, Dabernig M, Zeileis A (2015). Somewhere over the Rainbow: How to Make Effective Use of Colors in Meteorological Visualizations. Bulletin of the American Meteorological Society, 96(2), 203--216. 10.1175/BAMS-D-13-00155.1
# NOT RUN {
if(interactive()) {
## Using tcltk GUI
## Analog to: hclwizard(gui="tcltk")
pal <- choose_palette()
## Using shiny GUI
## Analog to: choose_palette(gui = "shiny")
pal <- hclwizard()
## use resulting palette function
filled.contour(volcano, color.palette = pal, asp = 1)
}
# }
Run the code above in your browser using DataLab