r - 更改 ggplot 上 ablines 的颜色

标签 r ggplot2

使用 this data我正在拟合一个情节:

p <- ggplot(dat, aes(x=log(Explan), y=Response)) + 
      geom_point(aes(group=Area, colour=Area))+
      geom_abline(slope=-0.062712, intercept=0.165886)+
      geom_abline(slope= -0.052300, intercept=-0.038691)+
      scale_x_continuous("log(Mass) (g)")+
      theme(axis.title.y=element_text(size=rel(1.2),vjust=0.2),
            axis.title.x=element_text(size=rel(1.2),vjust=0.2),
            axis.text.x=element_text(size=rel(1.3)),
            axis.text.y=element_text(size=rel(1.3)),
            text = element_text(size=13)) +
      scale_colour_brewer(palette="Set1")

两个 ablines 代表每个区域趋势的系统发育调整关系。我想知道,是否有可能在与相应区域数据相同的调色板中获取 ablines?第一个指定用于区域 A,第二个指定用于区域 B。

我用了:
g <- ggplot_build(p) 

找出第一种颜色是#E41A1C,第二种颜色是#377EB8,但是当我尝试在 +geom_abline 命令中使用 aes 来指定这些颜色时,即
p <- ggplot(dat, aes(x=log(Explan), y=Response)) + 
      geom_point(aes(group=Area, colour=Area))+
      geom_abline(slope=-0.062712, intercept=0.165886,aes(colour='#E41A1C'))+
      geom_abline(slope= -0.052300, intercept=-0.038691,aes(colour=#377EB8))+
      scale_x_continuous("log(Mass) (g)")+
      theme(axis.title.y=element_text(size=rel(1.2),vjust=0.2),
            axis.title.x=element_text(size=rel(1.2),vjust=0.2),
            axis.text.x=element_text(size=rel(1.3)),
            axis.text.y=element_text(size=rel(1.3)),
            text = element_text(size=13)) +
      scale_colour_brewer(palette="Set1")

它改变了点的颜色并添加到图例中,这是我不想做的。

任何建议将不胜感激!

最佳答案

由于您是直接设置颜色,因此您不需要 aes()只需使用 colour='#E41A1C' .

+geom_abline(slope=-0.062712, intercept=0.165886,colour='#E41A1C')

关于r - 更改 ggplot 上 ablines 的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17453789/

相关文章:

r - 寻找具有所有相等元素的最大方子矩阵

R-ggplot2 : Shade area under curve based on data categories

r - ggplot根据月份的阴影背景

r - 在颠簸图中使用曲线

r - 如何使Y轴上的值从R,ggplot2中的零开始

r - 在 Windows 上截断大文件

r - 在不同的数据组上绘制不同的自定义 stat_function

r - 如何根据数据的整体顺序更改特定的分类变量

r - 通过表达式生成时如何在ggplot2中对齐标题和副标题

R:向ggplot2添加水平线