1
私は4本のガイドラインが必要な散布図があります。私は、プロットスクリプトでこれらの行を定義するためにデータセットの変数を直接使用していません。 (垂直線はx値の平均と中央値で、2本の他の線の傾きは1と0.5です)
どのようにして線の色を定義し、正しい凡例ラベルを得ることができますか?私のプロットでは、色とラベルが混ざり合っています。ggplot2:scale_colour_manualを使ったラベルと色の混同
回答のある質問here (possibly duplicate)は上記の私の質問に似ていますが、完全ではないと思います。前者の問題は、scale_colourとscale_fill_manualの違いと、伝説を得るためにaes()を含めることの重要性に関するものです。私はgeom_-呼び出しで値を定義せず、scale_colour_manual()で値と色を区切っていたので、凡例ラベルと色の混合について質問します。
マイコード:
library(dplyr)
df <- iris %>%
group_by(Species) %>%
do({
mod = lm(Sepal.Length~Petal.Length, data = .)
data.frame(Intercept = coef(mod)[1],
Slope = coef(mod)[2],
SD= summary(mod)$coefficients[2,2])
})
meanSlope <- mean(df$Slope)
medianSlope <- median(df$Slope)
library(ggplot2)
ggplot(data=df, aes(x=Slope, y=SD)) +
geom_point() +
scale_x_continuous(limits = c(0,1.0)) +
scale_y_continuous(limits = c(0,1.0))+
geom_abline(aes(intercept = 0, slope = 1, colour="red"), show.legend = TRUE) +
geom_abline(aes(intercept = 0, slope = 0.5, colour="blue"), show.legend = TRUE) +
geom_vline(aes(xintercept = meanSlope, colour= "green"), show.legend = TRUE) +
geom_vline(aes(xintercept= medianSlope, colour= "darkgreen"), show.legend = TRUE) +
scale_colour_manual(name="Guide lines", values=c("red", "blue", "green", "darkgreen"),
labels=c("1 SD", "0.5 SD", "mean", "median"))
HTTPの可能性の重複:/ /stackoverflow.com/questions/24063163/how-to-add-manual-colors-for-ag gplot2-geom-smooth-geom-line – akrun
[ggplot2(geom \ _smooth/geom \ _line)のマニュアルカラーを追加する方法](http://stackoverflow.com/questions/24063163/how-to-add - マニュアルカラー - a-ggplot2-geom-smooth-geom-line) – Axeman