2017-10-20 7 views
1

을 나는이 크로스 탭 테이블 플롯 here에서 수정 R에 다음 코드 :- 색상 변경

#load ggplot2 
library(ggplot2)       

# Set up the vectors       
xaxis <- c("A", "B") 
yaxis <- c("A","B") 

# Create the data frame 
df <- expand.grid(xaxis, yaxis) 
df$value <- c(120,5,30,200)  

#Plot the Data 
g <- <- ggplot(df, aes(Var1, Var2)) + geom_point(aes(size = value), colour = "lightblue") + theme_bw() + xlab("") + ylab("") 
g + scale_size_continuous(range=c(10,30)) + geom_text(aes(label = value)) 

그것은 대단한 오른쪽 그림을 생산을, 하지만 4 개의 도트를 맞춤형으로 지정하기를 바랬습니다. 상단 왼쪽과 하단 오른쪽이 하나의 색상이고 상단 오른쪽과 하단이 다른 색상이되도록하는 것이 이상적입니다.

내가 사용하는 것을 시도했다 :

+ scale_color_manual(values=c("blue","red","blue","red")) 

을하지만 작동하지 않습니다. 어떤 아이디어?

답변

0

데이터 프레임의 벡터로 색을 지정하는 것이 좋습니다. 이렇게하는 열이 없으므로 하나를 만들거나 기존 열을 기반으로 규칙을 만들 수 있습니다. 아래)는 : 중요한 부분은

g <- ggplot(df, aes(Var1, Var2)) + geom_point(aes(size = value, colour = (Var2!=Var1))) + theme_bw() + xlab("") + ylab("") 
g + scale_size_continuous(range=c(10,30)) + geom_text(aes(label = value)) 

입니다

! 색상 = (변수 2를 대입 할 때 변수 = VAR1)는, 내가 geom_point의 미적 내부 (AES)을이를 넣어

편집 참고 : 당신이 원하는 경우 범례를 제거하십시오 (차트에 총계로 주석을 달아서 실제로 필요하지는 않습니다). 추가 할 수 있습니다 : g + theme(legend.position="none") to remo ve it

+0

이렇게 두 개의 별도 범례를 제공합니다. – PoGibas