在ggplot2中反转散点图中的大小

时间:2017-06-19 10:24:03

标签: r ggplot2

我有以下代码

plot_S<-ggplot(Sdat, aes(x = Nadd, y = Sratio, size = Variance))+
      geom_point(aes(colour=Fert,shape = Fert))+
      scale_color_manual(values=c("#2b2b2b", "#838383")) +
      theme_bw()+
      geom_abline(intercept=-0.0107, slope=-0.0010, colour = "#838383", size = 1.0)+
      geom_abline(intercept=-0.2068, slope=-0.0010, colour="#2b2b2b", size=1.0)+
      labs(x=expression(Delta*"N addition"),y="ln S ratio")
plot_S

产生以下内容:

enter image description here

然而,我希望较小的点(= 1.2)由较小的点表示,反之亦然,较低的方差值由较大的点表示。 有什么建议吗? (我希望以这种方式保持方差,而不是将它除以1)

1 个答案:

答案 0 :(得分:4)

我们可以对规模进行转换。 使用虚拟数据集:

library(ggplot2)
ggplot(diamonds, aes(x = depth, y = table, color = cut, size = price)) +
    geom_point()

^正常scale_size

ggplot(diamonds, aes(x = depth, y = table, color = cut, size = price)) +
    geom_point() +
    scale_size(trans = 'reverse')

^已转换scale_size