3

一部のデータが観測され、一部のデータがシミュレートされたデータの時系列があります。データ ソースを示す色を使用して、時間の経過に伴うデータ シリーズ全体のプロットを生成したいと考えています。ただし、ggplot で geom_line() を同じグループ内のポイントに接続する方法しかわかりません。

明確にするための例を次に示します。

# Create sample data
df <- data.frame(cbind(seq(1,9,1), c(1,2,3,4,5,4,3,2,1), c("obs","obs", "obs", "obs", "sim","sim","obs","sim", "obs")))
colnames(df) <- c("time", "value", "source")

# Make a plot
p <- ggplot(df, aes(x=time, y=value, group=source, color=source))
p + geom_point()  # shows all the points in sequential order as dots
p + geom_point() + geom_line() # connects obs to obs and sim to sim

この例では、x 軸上で 1:9 から順番に線を引き、すべての点を結びますが、グループに基づいて線 (および点) の色を変更します。

4

2 に答える 2

5
df <- data.frame(cbind(
                       seq(1,9,1), 
                       c(1,2,3,4,5,4,3,2,1), 
                       c("obs","obs","obs","obs","sim","sim","obs","sim","obs"),
                       c("all","all","all","all","all","all","all","all","all")))

colnames(df) <- c("time", "value", "source", "group")

ggplot(df,aes(x=time,y=value)) + 
    geom_point(aes(colour=source)) + 
    geom_path(data=df,aes(y=value,x=time,group=group,colour=source))

ここに画像の説明を入力

于 2014-01-08T01:16:48.130 に答える