ジババ、
あなたのコメントから、凡例にgeom_point
だけを表示したいとおっしゃいました。.
これは、直接使用するためにまだ実装されていない機能ですggplot2
(私が正しければ)。ただし、この投稿@Aniko
で提供されている修正/回避策があります。ちょっとトリッキーだけど素晴らしい!そして、それはうまく機能します。これが私が試したバージョンです。それがあなたが期待したものであることを願っています。
# bind both your data.frames
df <- rbind(tempcal, tempobs)
p <- ggplot(data = df, aes(x = time, y = data, colour = group1,
linetype = group1, shape = group1))
p <- p + geom_line() + geom_point()
p <- p + scale_shape_manual("", values=c(NA, NA, 19))
p <- p + scale_linetype_manual("", values=c(1,1,0))
p <- p + scale_colour_manual("", values=c("#F0E442", "#0072B2", "#D55E00"))
p <- p + facet_wrap(~ id, ncol = 1)
p
アイデアは、最初にすべての必要な属性を美学セクションで設定してプロットを作成し、必要なものをプロットしてから、後で を使用して手動で設定を変更することですscale_._manual
。たとえば、aでunset
線を引くことができます。同様に、 inを使用して線をポイントできます。ここで、最初の 2 つの値は forで、最後の値は for です。したがって、最初の 2 つを forおよびforに設定します。0
scale_linetype_manual
unset
NA
scale_shape_manual
group1=maximum and minimum
observed
NA
maximum
minimum
0
linetype
observed
そして、これはプロットです: