我正在尝试使用具有不同列长度的数据为项目构建累积密度图。我想能够以图形方式显示不同样本量的用户之间的用水情况。沿着x轴的人口百分比(0% - 100%)和沿着y轴的水使用(加仑)的东西。
所以我想这样......
WaterUse <- data.frame(A = c(S1DataCP$atotwu, S2DataCP$atotwu, S3DataCP$atotwu, S4DataCP$atotwu) )
ggplot(WaterUse, aes(x = ?, color = c("1", "2", "3", "4"))) + stat_ecdf()
数据框是根据四个不同数据集的查询构建的,这些数据集收集了特定人群的用水量(atotwu)。数据框中的列长度不同,没有给定的顺序。
答案 0 :(得分:1)
让我们使用名为atotwu
set.seed(10)
S1DataCP <- cbind.data.frame(rnorm(50))
S2DataCP <- cbind.data.frame(rnorm(45))
S3DataCP <- cbind.data.frame(rnorm(55))
S4DataCP <- cbind.data.frame(rnorm(60))
colnames(S1DataCP) <- colnames(S2DataCP) <- colnames(S3DataCP) <- colnames(S4DataCP) <- "atotwu"
这里我只是列绑定对应于该站点的标识符:
S1DataCP_df <- cbind(1, S1DataCP$atotwu)
S2DataCP_df <- cbind(2, S2DataCP$atotwu)
S3DataCP_df <- cbind(3, S3DataCP$atotwu)
S4DataCP_df <- cbind(4, S4DataCP$atotwu)
由于ggplot2
以长格式获取数据,因此我们对各个数据帧进行行绑定:
WaterUse <- rbind.data.frame(S1DataCP_df, S2DataCP_df, S3DataCP_df, S4DataCP_df)
colnames(WaterUse) <- c("Site", "atotwu")
最后绘制stat_ecdf
ggplot(WaterUse, aes(x=atotwu, colour=factor(Site))) + stat_ecdf() + labs(colour="Site")