按因子分组的散点图(X1,X2):使用ggplot2添加连接每组中X1的最大值对应的点的曲线

时间:2016-03-02 09:45:54

标签: r ggplot2 dplyr

示例图:

mtcars$cyl <- as.factor(mtcars$cyl)
p  <- ggplot(data=mtcars,aes(x=mpg,y=disp,color=cyl))
p <- p + geom_point()
p

enter image description here

对于每个组(每个柱面数),mpg具有最大值。我想绘制一条连接每个组中最大mpg点的线。我不知道该怎么做:我想我可以创建另一个数据帧,每个组中只包含mpg的最大值和disp的相应值。我尝试使用summarize中的dplyr,但我无法保留与disp的最大值对应的mpg值:

> foo <- mtcars %>% group_by(cyl) %>% summarize(maxmpg=max(mpg))
> foo
Source: local data frame [3 x 2]

     cyl maxmpg
  (fctr)  (dbl)
1      4   33.9
2      6   21.4
3      8   19.2

1 个答案:

答案 0 :(得分:1)

你可以做到

A