2010-03-04 3 views
1

R에 산점도가 있습니다 (ggplot2 사용). 데이터에는 다양한 정수 값 또는 null을 포함 할 수있는 숫자 열 (bin이라고 함)이 있습니다.데이터 속성이 null이 아닌 경우 다른 색상의 포인트를 색칠하는 방법

null이 아닌 bin 값으로 점을 다른 점과 다르게 표시하고 싶습니다. bin 값 하나당 하나의 색상을 원하지 않습니다. 너무 시끄 럽습니다. Null이 아닌 빈을 가진 사람들은 빨간색으로, 다른 사람들은 검은 색으로 간단하게 말하십시오.

qplot는 colour 속성을 가지고,하지만 난 당신이 첫 번째 색상 정의 할 수 colour = bin != null ? "red" : "black"

+1

누락 된 것이 아니라 null이라고 생각합니다. – hadley

답변

2

같은 조건을 표현하는 방법을 모른다 :

color <- rep("black", length(bin)) 
color[is.null(color)] <- "red" 

그렇지 않으면 당신이 ifelse 문을 사용할 수 있습니다 :

colour=ifelse(is.null(bin), "red", "black") 
+0

첫 번째 방법은 한 가지 수정으로 작업했습니다. is.null 대신 is.na 사용 작은 사소한 의견은 R이 색상 리터럴 (예 : 빨강 색을 빨강 색, 검정색을 검정색으로 해석하지 않음)이지만 값으로 autocolouring 그래서 다른 두 가지 색상 차트에 끝납니다. 나는 구문에 대해 더 많이 읽으면 고칠 수 있다고 생각한다. – wishihadabettername

+0

'+ scale_colour_identity()'시도 – hadley

관련 문제