동일한 데이터 시트에 3 개의 데이터 세트를 플롯하려고합니다. 하나의 데이터 세트는 연결되지 않은 지점의 집합으로 그래프에 나타나야하며 다른 두 데이터 집합은 연결된 데이터 요소로 나타나야합니다. I 아래에 다음 코드를 이용하여 그래프를 생성 할 수geom_point() 및 geom_line() ggplot2의 동일한 그래프에있는 여러 데이터 세트
x <- c(1,2,3,4)
y <- c(1.1,1.2,1.3,1.4)
y2 <- c(2.1,2.2,2.3,2.4)
x3 <- c(4,5,6,7)
y3 <- c(3.1,3.2,3.3,3.2)
p1 <- data.frame(x=x,y=y)
p2 <- data.frame(x=x,y=y2)
p3 <- data.frame(x=x3,y=y3)
plot(x,y,type="o", col="red")
points(x3,y3,col="darkgreen",pch=16)
points(x,y2,type="o",col="blue")
코드에 도시 된 바와 같이, 유형의 플롯 점의 두 가지가있다 "O"의 점은 선으로 연결되어 있다는 것을 의미 여기서 한 세트의 점은 선으로 연결되지 않습니다. 나는 ggplot2에서 이것을 재현하려고 노력했다. 내가 ggplot2에서 다음을 수행하십시오
zz <- melt(list(p1=p1,p2=p2,p3=p3), id.vars="x")
ggplot(zz, aes(x.value, color = L1))
+ geom_point() + scale_color_manual("Dataset",
values = c("p1" = "darkgreen", "p2" = "blue", "p3" = "red"))
위를하는, 아직 물론 빨간색과 파란색 점을 각각 연결되어 있지 않은, 세 가지 색상으로 포인트의 세 세트를 얻을. 나는 다음과 같은 한 그래서 나는 위의 명령에 geom_line()를 추가 할 수있는 포인트를 연결하려면이 모든 점을 연결하는 선을 초래 물론
ggplot(zz, aes(x.value, color = L1)) + geom_point() +
scale_color_manual("Dataset", values =
c("p1" = "darkgreen", "p2" = "blue", "p3" = "red")) + geom_line()
, 모든 빨간색 포인트가 연결되도록 서로 다른 모든 청색 점은 서로 연결되어 있으며 모든 녹색 점은 서로 연결되어 있습니다. 그러나 빨강 및 파랑 점을 연결하려면 녹색 점을 연결하지 않아야합니다. 이것을 할 수있는 방법이 있습니까?
내가 다음 (또는 유사) 할 수있는 :이 명령으로
ggplot(p2, aes(x,y)) + geom_point(color = "blue") + geom_line(color="blue")
+ geom_point(data=p3, color = "red") +
geom_line(data=p3, color="red") + geom_point(data=p1, color = "darkgreen")
, 붉은 점을 연결, 파란색은 연결하고, 녹색이 끊어집니다. 그러나 전설에 모든 포인트 색상을 표시 할 수 있기를 원하므로이 작업을 원하지 않습니다 (이 솔루션에는 전설이 표시되지 않습니다).
실행하려고 할 때 찾은 예제 스크립트에 약간의 오류가 있습니다. 'aes (x.value, color = L1)'은'aes (x, value, color = L1)'이어야합니다. – pedromanoel
감사합니다. 귀하의 질문도 저에게 도움이되었습니다. –