rainbow(),hsv()関数の引数

  • こちらから(いろいろなことを試しているのを見ると本当に参考になります)
  • rainbow()関数の中身は以下の通り
    • rainbow()関数は、作るべき色の個数とそれを色相上どこからどこまでかの指定を受けて、色相値を色の個数だけ作る
    • 色相とはこちらにあるように、色がぐるりと1周するその周回位置のこと
    • 色はHSV体系においては、色相と彩度と明度との3要素で指定される
    • 「色相・彩度・明度」のほかに2つの引数を用いて色を作る
      • ガンマ補正係数と透明度
      • ガンマ補正係数はこちらを参照されるとよいが、簡単には
        • 1が基準(補正なし)、大きい値で中間色調が明るくなり小さい値で中間色調が暗くなる

http://www.genome.med.kyoto-u.ac.jp/StatGenet/lectures/2010/color.jpeg

# n:作るべき色の数
# s:彩度saturation
# v:明度value
# start,end:作るべき色の数を色相のどこからどこまでで作るかを指定
# gamma:hsv()が実行するガンマ補正の係数
# alpha:透過度
#function (n, s = 1, v = 1, start = 0, end = max(1, n - 1)/n, 
#    gamma = 1, alpha = 1){
# 入力を加工してhsv()に渡す色相(h)を色の数だけ作る
# hsv(h,s,v,gamma,alpha)に渡して色を作る
}
#hsv
# h:色相:上位関数(raibow()が作ってくる値)
# s:彩度saturation
# v:明度value
# gamma:hsv()が実行するガンマ補正の係数
# alpha:透過度
#function (h = 1, s = 1, v = 1, gamma = 1, alpha = 1)
par(mfcol=c(2,4))
plot(1:200,col=rainbow(100,s=1,v=1,start=0,end=1,gamma=1,alpha=1),main="普通")
plot(1:200,col=rainbow(100,s=1,v=1,start=0,end=1,gamma=10,alpha=1),main="ガンマ大")
plot(1:200,col=rainbow(100,s=1,v=1,start=0,end=1,gamma=0.2,alpha=1),main="ガンマ小")
plot(1:200,col=rainbow(100,s=1,v=1,start=0,end=1,gamma=1,alpha=0.1),main="透明度0.5")
plot(1:200,col=rainbow(100,s=0.3,v=1,start=0,end=1,gamma=1,alpha=1),main="彩度0.3")
plot(1:200,col=rainbow(100,s=1,v=0.7,start=0,end=1,gamma=1,alpha=1),main="明度0.7")
plot(1:200,col=rainbow(100,s=1,v=1,start=0.3,end=0.7,gamma=1,alpha=1),main="色相範囲限定")
plot(1:200,col=rainbow(25,s=1,v=1,start=0,end=1,gamma=1,alpha=1),main="色数少")
par(mfcol=c(1,1))