我想将ggplot中所有几何对象的默认颜色设置为除黑色以外的其他颜色。请注意,这与设置scale_color不同...
简单示例:
简单示例:
# linear model with confidence bands...
set.seed(1)
df <- data.frame(x=1:50, y=5 + 2*(1:50)+rnorm(50,sd=10))
lm <- lm(y~x,df)
se <- summary(lm)$sigma # standard error of fit
Z <- qnorm(0.05/2,lower.tail=F) # 95% confidence bands
df <- cbind(df,predict(lm,se.fit=T)[c("fit","se.fit")])
# plot the result...
library(ggplot2)
ggplot(df, aes(x=x)) +
geom_point(aes(y=y), size=3) +
geom_line(aes(y=fit)) +
geom_line(aes(y=fit+Z*se.fit), linetype=2)+
geom_line(aes(y=fit-Z*se.fit), linetype=2)
ggplot(df, aes(x=x), colour="red")
可以实现。但是colour=
参数似乎被忽略了:一切仍然是黑色的。我可以在每个geom_
调用中添加colour="red"
,但我试图避免这样做。
编辑:
使用ggplot(df, aes(x=x, color="red"))
不是一个选项,因为它使用默认的ggplot调色板(均匀分布在HSL颜色圆周上)创建一个颜色比例尺。对于一个颜色,这是#F8766D
,它恰好是浅红色。此外,这会创建一个需要隐藏的图例。
aes(...)
中的颜色来创建一个颜色比例尺,然后使用类似于scale_color_manual(values="red", guide="none")
的东西。这只是一个hack - 应该有更简单的方法。另外,假设我想在图中使用颜色比例尺来表示其他内容,例如基于某个分组变量对点进行着色并使其他所有内容都为红色。 - jlhoward