2012-09-11 122 views
4

嗨我有一個關於geom_line的問題。geom_line - 同一行中的不同顏色

我想要做的是,對於同一條線,根據某些過濾器的不同顏色段適用於另一個變量,即不是用於繪製線條的變量。

,例如,如果我們有一個報頭時間,VAR1和VAR2

time <- seq (1,7,1) 
var1 <- c(3,5,7,2,3,2,8) 
var2 <- c(2,4,18,16,12,3,2) 

一個數據幀,如果我有情節時間與VAR1使用geom_line和可以說,我想要的顏色的線通過施加的高於10的過濾器在變量var2上。所以這條線在時間1,2,6,7上將具有相同的顏色,並且在3,4,5中具有另一種顏色。

請告訴我這是否可能?如果是這樣,請給我一些指示。

回答

4

這是你想要的嗎?

time <- seq (1,7,1) 
var1 <- c(3,5,7,2,3,2,8) 
var2 <- c(2,4,18,16,12,3,2) 
DF <- data.frame(time, var1, var2) 

ggplot(DF, aes(time, var1, colour=(var2>10))) + 
    geom_line(aes(group=1)) 

enter image description here

+0

不錯!非常感謝你。我不知道你可以使用var內部顏色。 graham – user18407

+0

@ user18407將圖的美學映射(數據的位置,顏色,形狀等)與數據值映射的想法是「ggplot2」的基本思想之一(以及它所處的圖形語法基於);它是以圖形方式呈現數據的強大工具。 –