Ggplot2에서 요소별로 색상을 할당하는 방법(예제 포함)
범주형 변수를 기반으로 ggplot2 플롯의 점에 색상을 할당하려는 경우가 종종 있습니다.
다행히도 다음 구문을 사용하면 쉽게 수행할 수 있습니다.
ggplot(df, aes (x=x_variable, y=y_variable, color=color_variable)) +
geom_point()
이 튜토리얼에서는 iris 라는 내장 R 데이터 세트를 사용하여 이 구문을 실제로 사용하는 방법에 대한 몇 가지 예를 제공합니다.
#view first six rows of iris dataset
head(iris)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
예 1: 기본 색상 사용
다음 코드는 Species 요인 변수를 기반으로 ggplot2 플롯의 점에 기본 색상을 할당하는 방법을 보여줍니다.
library (ggplot2) ggplot(iris, aes (x=Sepal.Length, y=Sepal.Width, color=Species)) + geom_point()
색상 스케일이나 사용자 정의 색상 목록을 지정하지 않았기 때문에 ggplot2는 단순히 기본 빨간색, 녹색 및 파란색 색상 목록을 포인트에 할당했습니다.
예 2: 사용자 정의 색상 사용
다음 코드는 scale_color_manual()을 사용하여 ggplot2 플롯의 점에 사용자 정의 색상을 할당하는 방법을 보여줍니다.
library (ggplot2) ggplot(iris, aes (x=Sepal.Length, y=Sepal.Width, color=Species)) + geom_point() + scale_color_manual( values = c(" setosa " = " purple ", " versicolor =" orange ", " virginica "=" steelblue "))
색상을 지정하기 위해 16진수 색상 코드를 사용할 수도 있습니다.
예 3: 사용자 정의 색상 스케일 사용
다음 코드는 RColorBrewer 패키지의 사용자 정의 색상 스케일을 사용하여 ggplot2 플롯의 점에 사용자 정의 색상을 할당하는 방법을 보여줍니다.
library (ggplot2) library (RColorBrewer) #define custom color scale myColors <- brewer. pal (3, " Spectral ") names(myColors) <- levels(iris$Species) custom_colors <- scale_color_manual(name = " Species Names ", values = myColors) ggplot(iris, aes (x=Sepal.Length, y=Sepal.Width, color=Species)) + geom_point() + custom_colors
추가 리소스
ggplot2에서 병렬 플롯을 만드는 방법
ggplot2에서 범례 제목을 변경하는 방법
최고의 ggplot2 테마에 대한 완벽한 가이드