R中是否有一种方法可以覆盖3个密度图,以时间为x轴,并计为y轴?

问题描述 投票:0回答:1

所以这让我发疯了,如果有人可以帮助我,我会很乐意!

我有一个包含3列的日期集。每列均填充日期。每个日期代表一个社交媒体平台上的帖子。例如,如果2条帖子于2012年10月10日发布到Twitter,则该日期将在Twitter列中记录两次。

“我的数据看起来像这样”“>

我想在密度图中绘制每个列随时间的分布图。

我希望以月为单位的时间作为我的x轴。

我希望相对频率作为我的y轴...。就像该月推特上有多少帖子的计数。因此,对于2012年10月10日的Twitter,将为2。

而且我希望所有分布都在同一图上,以便可以对其进行比较。

到目前为止,我已经尝试了不计其数的事情,但是我似乎无法在同一个图表上显示所有上述信息,并且使我发疯!

我在这里制作了密度图:

<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS91bFlBOC5wbmcifQ==” alt =“我制作的密度图”>

使用以下代码:

social_media_dates %>%
               ggplot( aes(x =`Facebook_dates`)) +
               geom_density(fill="#69b3a2", color="#e9ecef", alpha=0.8)+
               theme_bw()+
               scale_x_date(labels = date_format("%Y-%m"), breaks = date_breaks("3 months"), limits = c(as.Date("2016-12-01"), as.Date("2020-05-20"))) +
               labs(title = "Facebook posts over time")+
               xlab("month")+
               ylab("density")

但是:我不知道如何]a)将y轴更改为帖子数b)将同一张图上的3个图和相同的轴合并]

理想情况下,我想要看起来像gglots图的东西:

“示例ggridges”

或仅在同一图形上的所有3条曲线。

我正在使用ggplot和Rstudio供参考。

我已经尝试了很多东西,但是它们一直在失败!我正在考虑通过图表将“所有日期”列为“日期”列,并将其作为我的x轴。然后在“计数”列中计算每天的帖子数。

例如

date | facebook_count | twitter_count | instagram_count

2018-02-01 | 3 | 4 | 10

2018-02-02 | 4 | 8 | 2

2018-02-03 | NA | 4 | 6

我制作了一个看起来像这样的数据框,但是我尝试过的所有图都坏了。

如果有人知道该怎么做,我将非常感激!

所以这一直让我发疯,如果有人可以帮助我,我将非常乐意!我有3列的日期集。每列均填充日期。每个日期代表一个社交媒体平台上的帖子。对于...

r ggplot2 rstudio density-plot ggridges
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.