0
を見つけるためにIは、RGB色三角形をエドワードのおかげを有する小さな修飾を有するhereに答える:使用RGB色三角形()色
plot(NA,NA,xlim=c(0,1),ylim=c(0,1),asp=1,bty="n",axes=F,xlab="",ylab="")
segments(0,0,0.5,sqrt(3)/2)
segments(0.5,sqrt(3)/2,1,0)
segments(1,0,0,0)
# sm - how smooth the plot is. Higher values will plot very slowly
sm <- 500
for (y in 1:(sm*sqrt(3)/2)/sm){
for (x in (y*sm/sqrt(3)):(sm-y*sm/sqrt(3))/sm){
## distance from base line:
d.red = y
## distance from line y = sqrt(3) * x:
d.green = abs(sqrt(3) * x - y)/sqrt(3 + 1)
## distance from line y = - sqrt(3) * x + sqrt(3):
d.blue = abs(- sqrt(3) * x - y + sqrt(3))/sqrt(3 + 1)
points(x, y, col=rgb(d.red, d.green, d.blue), pch=19)
}
}
Iはまた、(例えば(232, 103, 101)
用)を一度RGBコード色を有し、これらの座標上のこのRGB色の三角形に大きな黒い点があります。私はそうggtern()
# install.packages("ggtern")
library(ggtern)
df = data.frame(x=232, y=103, z=101)
breaks = seq(0,1,by=0.2)
#breaks = c(0,255)
ggtern(data = df, aes(x, y, z)) +
geom_point(color = black) +
# I use 255 as the triangle limit, because the RGB code is an [0, 255] interval.
limit_tern(breaks=breaks,labels=255*breaks) +
scale_color_gradient(rgb(d.red, d.green, d.blue))
を使用したい理由です
は、私の黒点は、良好な座標に位置していない、と私のRGBの三角形の色はggternのbackbround上ではありません。私はまだggternとは甘いものではありません。前にデータ変換を行う必要がありますか?
私のRGBデータは次のようにオブジェクト(RGB0)にあります:私はade4
パッケージからtriangle.plot
とオーバー方法を発見した任意のヘルプ