Paletteer version 1.0.0

I’m over-the-moon excited to announce the release of version 1.0.0 of paletteer. This version comes with breaking changes and major quality of life improvements. I will unironically name this the “first useable version” for reasons that will be obvious later in this post.

Breaking Changes 💥

There has been a significant change in syntax for this version. For versions <= 0.2.1 the way to specify a palette was done using the arguments package and palette. Both could be taken as both string or unquoted strings.

# versions <= 0.2.1
paletteer_c("gameofthrones", "baratheon", 10)

paletteer_d(nord, halifax_harbor)

While convinient and cool to use NSE, tt was not very useful and I had several people complaining. I realized that using NSE wasn’t a good fit at all for this package. This means that from version 1.0.0 and moving forward only strings will be used to specify palettes.

Secondly, I have eliminated the package argument and from now on all specification is done on the form package::palette

# versions >= 1.0.0
paletteer_c("gameofthrones::baratheon", 10)

paletteer_d("nord::halifax_harbor")

The above change is the most likely to break your earlier code.

Autocomplete 🎉

The biggest downside to the original version of paletteer and later version was the lack of discoverability. Unless you knew the palette you wanted and the EXACT spelling you couldn’t really use paletteer. Sure you could browse palettes_c_names and palettes_d_names like some caveman, but to be honest the package felt more like a novelty project than a useful tool.

All of this changes with version 1.0.0 🎉! Simply starting by typing paletteer_d() or any of the other related functions and simply hit tab. This will prompt all the names of available palettes which you then can search through using fuzzy search.

This change is the single biggest improvement to this package.

  • Discoverability ✅
  • No more missspellings ✅
  • Total awesomeness ✅

And yes, it also work with the scale_*_paletteer() functions 🙌

Prismatic integration 💎

You can see from the first gif that the output is a little more colorful then what you are used to. This all comes from the prismatic package I released earlier this year. The prismatic colors objects that are returned from all paletteer functions will be printed with colorful backgrounds provided that the crayon package is available, otherwise, it will just print normally. This is great for when you want to take a quick look at the colors you are about to use. Please note that the background can only take 256 different colors. Some palettes will fit nicely inside these 256 values and will display nicely (viridis::magma) below, while other palettes with a lot of value will show weird jumps in colors (gameofthrones::greyjoy)

If you want more accurate color depictions you can simply plot() the output to see the real colors

plot(paletteer_c("viridis::magma", 10))

plot(paletteer_c("gameofthrones::greyjoy", 100))

More color palettes 🌈

It wouldn’t be a paletteer release without more palettes. And this release is no different! This update brings us 654 new palettes!!! from 19 different packages bringing out total up to 1759. I did a little live-tweeting while implementing these packages so you can take a look at the newly included palettes here:

That is all I have for you this time around if you create or find more palette packages please go over and file an issue so they can be included as well. Thank you!

session information


─ Session info ───────────────────────────────────────────────────────────────
 setting  value                       
 version  R version 3.6.0 (2019-04-26)
 os       macOS Mojave 10.14.6        
 system   x86_64, darwin15.6.0        
 ui       X11                         
 language (EN)                        
 collate  en_US.UTF-8                 
 ctype    en_US.UTF-8                 
 tz       America/Los_Angeles         
 date     2020-04-23                  

─ Packages ───────────────────────────────────────────────────────────────────
 ! package     * version    date       lib source                              
 P assertthat    0.2.1      2019-03-21 [?] CRAN (R 3.6.0)                      
 P backports     1.1.6      2020-04-05 [?] CRAN (R 3.6.0)                      
 P blogdown      0.18       2020-03-04 [?] CRAN (R 3.6.0)                      
 P bookdown      0.18       2020-03-05 [?] CRAN (R 3.6.0)                      
 P cli           2.0.2      2020-02-28 [?] CRAN (R 3.6.0)                      
 P clipr         0.7.0      2019-07-23 [?] CRAN (R 3.6.0)                      
 P cluster       2.1.0      2019-06-19 [?] CRAN (R 3.6.0)                      
 P colorspace    1.4-1      2019-03-18 [?] CRAN (R 3.6.0)                      
 P crayon        1.3.4      2017-09-16 [?] CRAN (R 3.6.0)                      
 P desc          1.2.0      2018-05-01 [?] CRAN (R 3.6.0)                      
 P details     * 0.2.1      2020-01-12 [?] CRAN (R 3.6.0)                      
 P dichromat     2.0-0      2013-01-24 [?] CRAN (R 3.6.0)                      
 P digest        0.6.25     2020-02-23 [?] CRAN (R 3.6.0)                      
 P dplyr         0.8.5      2020-03-07 [?] CRAN (R 3.6.0)                      
 P ellipsis      0.3.0      2019-09-20 [?] CRAN (R 3.6.0)                      
 P emo           0.0.0.9000 2019-12-18 [?] Github (hadley/emo@3f03b11)         
 P evaluate      0.14       2019-05-28 [?] CRAN (R 3.6.0)                      
 P fansi         0.4.1      2020-01-08 [?] CRAN (R 3.6.0)                      
 P generics      0.0.2      2018-11-29 [?] CRAN (R 3.6.0)                      
 P ggplot2       3.3.0      2020-03-05 [?] CRAN (R 3.6.0)                      
 P glue          1.4.0      2020-04-03 [?] CRAN (R 3.6.0)                      
 P gtable        0.3.0      2019-03-25 [?] CRAN (R 3.6.0)                      
 P htmltools     0.4.0      2019-10-04 [?] CRAN (R 3.6.0)                      
 P httr          1.4.1      2019-08-05 [?] CRAN (R 3.6.0)                      
 P jcolors       0.0.4      2019-12-08 [?] Github (jaredhuling/jcolors@f200755)
 P knitr       * 1.28       2020-02-06 [?] CRAN (R 3.6.0)                      
 P lifecycle     0.2.0      2020-03-06 [?] CRAN (R 3.6.0)                      
 P lubridate     1.7.8      2020-04-06 [?] CRAN (R 3.6.0)                      
 P magrittr      1.5        2014-11-22 [?] CRAN (R 3.6.0)                      
 P mapproj       1.2.7      2020-02-03 [?] CRAN (R 3.6.0)                      
 P maps          3.3.0      2018-04-03 [?] CRAN (R 3.6.0)                      
 P munsell       0.5.0      2018-06-12 [?] CRAN (R 3.6.0)                      
 P oompaBase     3.2.9      2019-08-24 [?] CRAN (R 3.6.0)                      
 P paletteer   * 1.1.0      2020-03-10 [?] CRAN (R 3.6.0)                      
 P palr          0.2.0      2020-01-30 [?] CRAN (R 3.6.0)                      
 P pals          1.6        2019-12-04 [?] CRAN (R 3.6.0)                      
 P pillar        1.4.3      2019-12-20 [?] CRAN (R 3.6.0)                      
 P pkgconfig     2.0.3      2019-09-22 [?] CRAN (R 3.6.0)                      
 P png           0.1-7      2013-12-03 [?] CRAN (R 3.6.0)                      
 P purrr         0.3.3      2019-10-18 [?] CRAN (R 3.6.0)                      
 P R6            2.4.1      2019-11-12 [?] CRAN (R 3.6.0)                      
 P Rcpp          1.0.4.6    2020-04-09 [?] CRAN (R 3.6.0)                      
 P rematch2      2.1.1      2020-03-28 [?] CRAN (R 3.6.2)                      
   renv          0.9.3      2020-02-10 [1] CRAN (R 3.6.0)                      
 P rlang         0.4.5      2020-03-01 [?] CRAN (R 3.6.0)                      
 P rmarkdown     2.1        2020-01-20 [?] CRAN (R 3.6.0)                      
 P rprojroot     1.3-2      2018-01-03 [?] CRAN (R 3.6.0)                      
 P rstudioapi    0.11       2020-02-07 [?] CRAN (R 3.6.0)                      
 P scales        1.1.0      2019-11-18 [?] CRAN (R 3.6.0)                      
 P scico         1.1.0      2018-11-20 [?] CRAN (R 3.6.0)                      
 P sessioninfo   1.1.1      2018-11-05 [?] CRAN (R 3.6.0)                      
 P stringi       1.4.6      2020-02-17 [?] CRAN (R 3.6.0)                      
 P stringr       1.4.0      2019-02-10 [?] CRAN (R 3.6.0)                      
 P tibble        3.0.1      2020-04-20 [?] CRAN (R 3.6.2)                      
 P tidyselect    1.0.0      2020-01-27 [?] CRAN (R 3.6.0)                      
 P vctrs         0.2.4      2020-03-10 [?] CRAN (R 3.6.0)                      
 P viridisLite   0.3.0      2018-02-01 [?] CRAN (R 3.6.0)                      
 P withr         2.1.2      2018-03-15 [?] CRAN (R 3.6.0)                      
 P xfun          0.13       2020-04-13 [?] CRAN (R 3.6.2)                      
 P xml2          1.3.0      2020-04-01 [?] CRAN (R 3.6.2)                      
 P yaml          2.2.1      2020-02-01 [?] CRAN (R 3.6.0)                      

[1] /Users/emilhvitfeldthansen/Desktop/blogv4/renv/library/R-3.6/x86_64-apple-darwin15.6.0
[2] /private/var/folders/m0/zmxymdmd7ps0q_tbhx0d_26w0000gn/T/Rtmp0V0Cpf/renv-system-library

 P ── Loaded and on-disk path mismatch.


Emil Hvitfeldt
Emil Hvitfeldt
Research Programmer