私は値で色付けされた点を表示するためにggplot2を使用しています。さらに、このデータに回帰直線を示したいと思います。ggplot2プロットに線を追加して凡例を調整する
これは私が使用しているデータの一例である:
structure(list(a = c(63.635707116462, 59.7200565823145, 56.0311239027684,
53.1573088984712, 51.0192317467653, 48.0727441921859, 47.1516684444444,
45.5081981068289, 43.5874967485549, 43.3163255512322), b = c(278.983796321269,
254.833332215134, 234.812503036992, 221.519477352253, 212.013474843663,
199.926648466351, 194.577007436116, 186.506133515809, 179.411968705754,
172.056487287103), col = c(18.36245, 22.03494, 25.70743, 29.37992,
33.05241, 36.7249, 40.39739, 44.06988, 47.74237, 51.41486), predict = c(275.438415187452,
256.049214397717, 237.782656695549, 223.552332598712, 212.965175538386,
198.374997400175, 193.814089203754, 185.676086057123, 176.165312823424,
174.82254927815)), .Names = c("a", "b", "col", "predict"), row.names = c(NA,
-10L), class = "data.frame")
そして、次のように私がこれまで使っていたコードは次のとおりです。
しかしp <- ggplot(data = df, aes(x = a, y = b, colour=col)) + geom_point()
p + stat_smooth(method = "lm", formula = y ~ x, se = FALSE)
、この私はggplot2(これはqplot
を使用しています)の例の1つに従おうとしましたが、fo llowing:例で
model <- lm(b ~ a, data = df)
df$predict <- stats::predict(model, newdata=df)
p <- ggplot(data = df, aes(x = a, y = b, colour=col)) + geom_point()
p + geom_line(aes(x = a, y = predict))
、ラインが私の場合に+ geom_line(data=df)
されるであろう、+ geom_line(data=grid)
を使用して追加されます。これは、プロット上に直線を描くのではなく、ポイントを結合するだけです。完全に真っ直ぐであるこのプロット上の線をどのようにプロットすることができますか?
私がプロットしていた他の問題は、伝説の名前を変更しています。データの2つのタイトル(「Z密度」など)が必要ですが、変更方法はわかりません。私は+ scale_colour_discrete(name = "Fancy Title")
との質問をthisのアドバイスを使って試してみましたが、私のデータが値で色付けされているので動作しません。
私は 'geom_smooth(stat = lm、...)は、実際には望む通り完全な直線を生成すると信じています。 'geom_smooth(stat = lm、...)'(または '' lm "')を使用して '' geom_smooth(method = "lm") 'を使用する' 'qplot()' 'のためには – Andrie
、 )が 'ggplot'のために動作しないように見える – djq
ストレートラインは、連続メディアではなくピクセルで構成されているため、画面上でギザギザに見えることがよくあります。伝統的に、これに対抗するためにアンチエイリアスが使用されています。これは、Macのデフォルトデバイスが使用していると思います。 – James