ggplot2 기본 색상표 에뮬레이트
원하는 색상 수에 대해 ggplot2의 기본 색상 팔레트를 에뮬레이트하는 데 사용할 수 있는 기능은 무엇입니까?예를 들어, 3을 입력하면 다음과 같은 색상의 HEX 문자 벡터가 생성됩니다.
색상은 15부터 시작하여 색상 휠 주위에 동일한 간격으로 표시됩니다.
gg_color_hue <- function(n) {
hues = seq(15, 375, length = n + 1)
hcl(h = hues, l = 65, c = 100)[1:n]
}
예:
n = 4
cols = gg_color_hue(n)
dev.new(width = 4, height = 4)
plot(1:n, pch = 16, cex = 2, col = cols)
이것은 의 결과입니다.
library(scales)
show_col(hue_pal()(4))
show_col(hue_pal()(3))
이 답변들은 모두 매우 좋지만 스택 오버플로에서 발견한 또 다른 유용한 내용을 공유하고자 합니다. 여기 직접 링크가 있습니다.
기본적으로 @Didzis Elferts는 ggplot이 사용자가 만든 플롯을 만드는 데 사용하는 모든 색상, 좌표 등을 얻을 수 있는 방법을 보여줍니다.아주 좋아요!
p <- ggplot(mpg,aes(x=class,fill=class)) + geom_bar()
ggplot_build(p)$data
[[1]]
fill y count x ndensity ncount density PANEL group ymin ymax xmin xmax
1 #F8766D 5 5 1 1 1 1.111111 1 1 0 5 0.55 1.45
2 #C49A00 47 47 2 1 1 1.111111 1 2 0 47 1.55 2.45
3 #53B400 41 41 3 1 1 1.111111 1 3 0 41 2.55 3.45
4 #00C094 11 11 4 1 1 1.111111 1 4 0 11 3.55 4.45
5 #00B6EB 33 33 5 1 1 1.111111 1 5 0 33 4.55 5.45
6 #A58AFF 35 35 6 1 1 1.111111 1 6 0 35 5.55 6.45
7 #FB61D7 62 62 7 1 1 1.111111 1 7 0 62 6.55 7.45
해들리 위컴의 ggplot2 책 106페이지에서:
기본 색상표인 scale_color_hue는 hcl 색상 휠 주위에 균일한 간격의 색상을 선택합니다.
약간의 리버스 엔지니어링을 통해 이 기능을 구성할 수 있습니다.
ggplotColours <- function(n = 6, h = c(0, 360) + 15){
if ((diff(h) %% 360) < 1) h[2] <- h[2] - 360/n
hcl(h = (seq(h[1], h[2], length = n)), c = 100, l = 65)
}
막대 그래프에서 이를 시연하는 방법:
y <- 1:3
barplot(y, col = ggplotColours(n = 3))
그림 대신 16진수 값을 가져오려면 다음을 사용할 수 있습니다.
hue_pal()(3)
이 코드 대신:
show_col(hue_pal()(3))
언급URL : https://stackoverflow.com/questions/8197559/emulate-ggplot2-default-color-palette
'programing' 카테고리의 다른 글
Numpy 이미지 크기 조정/크기 조정 (0) | 2023.06.04 |
---|---|
딕트할 파이썬 튜플 (0) | 2023.06.04 |
UIButtons 배경색을 변경할 수 있습니까? (0) | 2023.06.04 |
com.google.android.gms.internal.zzaja에 대한 클래스 파일을 찾을 수 없습니다. (0) | 2023.06.04 |
작곡가가 phpoffice/phpspreadsheet가 작동하지 않습니다. (0) | 2023.04.15 |