我在R中有如下数据:
bag_id location_type event_ts
2 155 sorter 2012-01-02 17:06:05
3 305 arrival 2012-01-01 07:20:16
1 155 transfer 2012-01-02 15:57:54
4 692 arrival 2012-03-29 09:47:52
10 748 transfer 2012-01-08 17:26:02
11 748 sorter 2012-01-08 17:30:02
12 993 arrival 2012-01-23 08:58:54
13 1019 arrival 2012-01-09 07:17:02
14 1019 sorter 2012-01-09 07:33:15
15 1154 transfer 2012-01-12 21:07:50
其中class(event_ts)为POSIXct
。
我想在不同的时间找到每个位置的行李密度。
我使用了命令geom_density(ggplot2)
,我可以很好地绘制它。我想知道density(base)
和这个命令之间是否有任何区别。我的意思是他们正在使用的方法或他们正在使用的默认带宽等有任何不同。
我需要在数据框中添加密度。如果我使用了函数density(base)
,我知道如何使用函数approxfun
将这些值添加到我的数据框中,但我想知道当我使用geom_density(ggplot2)
时它是否相同
答案 0 :(得分:5)
快速浏览ggplot2 documentation for geom_density()
表明它包含了stat_density()
中的功能。第一个参数引用了来自基函数adjust
的{{1}}参数。因此,对于您的直接问题 - 它们是基于相同的功能构建的,尽管使用的确切参数可能不同。您可以控制设置这些参数,但可能无法获得所需的灵活性。
使用density()
的另一种方法是计算geom_density()
之外的密度,然后用ggplot()
绘制。例如:
geom_line()
在这里,它们提供了几乎相同的图表,但它们可能会因您的数据和设置而有很大差异。