library(RColorBrewer)
#brewer.pal.info
brewer.pal(n = 9, name = "Pastel1")
## [1] "#FBB4AE" "#B3CDE3" "#CCEBC5" "#DECBE4" "#FED9A6" "#FFFFCC" "#E5D8BD"
## [8] "#FDDAEC" "#F2F2F2"
brewer.pal(n = 8, name = "Pastel2")
## [1] "#B3E2CD" "#FDCDAC" "#CBD5E8" "#F4CAE4" "#E6F5C9" "#FFF2AE" "#F1E2CC"
## [8] "#CCCCCC"
#display.brewer.all(colorblindFriendly = T, type= "qual")
display.brewer.pal(n = 9, name = "Pastel1")

display.brewer.pal(n = 8, name = "Pastel2")

########################
#install.packages("RPMG")
library(RPMG)
## 
## Attaching package: 'RPMG'
## The following object is masked from 'package:grDevices':
## 
##     hcl.colors
?pastel.colors
## starting httpd help server ...
##  done
pastel.colors(12)
##  [1] "#E0FFD9" "#EECBFF" "#FFD6E1" "#D0FFD5" "#D1EEFF" "#FFDFD1" "#CBD3FF"
##  [8] "#FFCCDF" "#CFFFDB" "#DDF9FF" "#FFDBE4" "#FFD3E3"
pastel.colors(12, seed=1)
##  [1] "#DAD5FF" "#CCFFDB" "#EED3FF" "#D6FFFE" "#E3D7FF" "#FFD5D7" "#D1FFDE"
##  [8] "#F4DDFF" "#FFDAE9" "#F3FFD1" "#D6DAFF" "#FFF4D3"
cols <- function(a) image(1:12, 1, as.matrix(1:12), col=a, axes=FALSE , xlab="", ylab="")
cols(pastel.colors(12))

cols(pastel.colors(12, seed=1))

#####################
a <-c("red","red1","red2","red3","grey","darkgreen","skyblue","blue","magenta","magenta4","yellow","orange","pink","pink","black")
par(mfrow=c(3,1))
barplot(seq_along(a), col=a, main="original")
# transform to rgb
a1 <- col2rgb(a)
# transform to HSV space
a2 <- rgb2hsv(a1)
# you can try different scaling values e.g. between 0.3 - 0.6
n <- 0.4
barplot(seq_along(a), col=hsv(a2[1,], a2[2,]*n, a2[3,]), main="Pastel_hsv")
# calculate hue for HCl
hue <- a2["h",]*360
# create color with suitable chroma and luminance to get pastel color
a3 <- hcl(hue, 35, 85)
barplot(seq_along(a), col=a3, main="Pastel_hcl")