2017-08-02 8 views
1

私は200の異なるグループを含むデータセットを持っています。これは0から200までの数字を取ることができます。私はすべてのグループのために線を描きたいので、伝説は "数値"です。私はこのことをどのようにするのかを知っていますが、それを働かせることはできません。最良の例ではありません:ggplotを使用していくつかの数字の線を描く

library(tidyverse) 


df <- data.frame(Day = 1:100) 
df <- df %>% mutate(A = Day + runif(100,1,400) + rnorm(100,3,400) + 2500, 
        B = Day + rnorm(100,2,900) + -5000 , 
        C = Day + runif(100,1,50) + rnorm(100,1,1000) -500, 
        D = (A+B+C)/5 - rnorm(100, 3,450) - 2500) 

df <- gather(df, "Key", "Value", -Day) 
df$Key1 <- apply(df, 1, function(x) which(LETTERS == x[2])) 

ggplot(df, aes(Day, Value, col = Key)) + geom_line() # I would to keep 4 lines, but would like have the following legend 

ggplot(df, aes(Day, Value, col = Key1)) + geom_line() # Not correct lines 
ggplot(df, aes(Day, Value)) + geom_line(aes(col = Key1)) # Not correct lines 

おそらく重複しますが、私は答えを見つけられず、間違ったものがあります。

答えて

3

この意味は?私はあなたが200行を望んでいるとは確信していませんが、あなたのコードでは4行が必要だと言っています。 groupを使用して

ggplot(df, aes(Day, Value, group = Key, col=Key1)) + geom_line() 

colはあなたに別の色を与える使用して、あなたに別のラインを提供します。

+0

ありがとうございます。私の "実データ"から200行が得られました。 – MLEN

関連する問題