2

有没有办法(在 R 中使用 ggplot 或其他方式)在单列(两行)中绘制频率和累积频率曲线,即在另一列的顶部,以便可以使用直线在两条曲线上显示给定的四分位数?我希望我清楚这一点..

您可以使用这些数据..

mydata<-structure(list(speed = c(10, 15, 20, 25, 30, 35, 40, 45, 50),frequency = c(0, 1, 5, 10, 20, 10, 6, 3, 0)), .Names = c("speed","frequency"), row.names = c(NA, -9L), class = "data.frame")
4

1 回答 1

8
mydata<-structure(list(speed = c(10, 15, 20, 25, 30, 35, 40, 45, 50),frequency = c(0, 1, 5, 10, 20, 10, 6, 3, 0)), .Names = c("speed","frequency"), row.names = c(NA, -9L), class = "data.frame")


library(ggplot2)

qplot(data=mydata,
      x=speed,
      y=frequency,
      geom=c("point", "line"))+
      geom_line(aes(y=cumsum(frequency)))

在此处输入图像描述

或者

添加累积频率列

mydata$sum.freq<-with(mydata, cumsum(frequency))

library(reshape)
qplot(data=melt(mydata, id.vars="speed"),
       x=speed,
       y=value,
       geom=c("point", "line"), facets=variable~.)

在此处输入图像描述

于 2012-04-05T14:59:44.500 回答