密度图基于年份变量的总和?

时间:2013-05-30 20:02:13

标签: r ggplot2

我希望你们能帮助我。我正在为我的公司做报告。根据我们公司以及竞争对手的销售周数,我有历史信息(10年)。

我正在尝试使用ggplot进行密度映射。它看起来与this one完全相似:

enter image description here

所以我希望将X轴作为日期,将Y轴作为每个供应商销售额相对于所有供应商的总销售额的百分比。

我有一个包含本周列的文件,供应商的列和该供应商每周销售的列。

这可以使用geom_density完成吗?

1 个答案:

答案 0 :(得分:1)

以长格式获取一些数据,p

p <- structure(list(plot = c(4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 4L), time = c(1986, 1987, 1998, 2010, 1986, 1987, 1998, 2010, 
1986, 1987, 1998, 2010), id = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L), variable = structure(c(1L, 1L, 1L, 1L, 2L, 2L, 
2L, 2L, 3L, 3L, 3L, 3L), .Label = c("ABBA", "PIRU", "BECO"), class = "factor"), 
    value = c(0.557407905350901, NaN, 0.316510695187166, 0.301356485920244, 
    0.213498252218338, NaN, 0.17028743315508, 0.180391321330919, 
    0.0244689432643184, NaN, 0.0217245989304813, 0.020595859522034
    )), .Names = c("plot", "time", "id", "variable", "value"), row.names = c(NA, 
-12L), class = "data.frame")

绘制它:

ggplot(p, aes(x=time, y=value, fill=variable)) + geom_area()