我如何按时间顺序绘制 R 中年份变化的周?

Posted

技术标签:

【中文标题】我如何按时间顺序绘制 R 中年份变化的周?【英文标题】:How do I chronologically plot weeks with a change of years in R? 【发布时间】:2022-01-05 08:15:59 【问题描述】:

我有以下数据框:

week year politicalization_sum
52 2020 5
53 2020 10
1 2021 0
2 2021 4
3 2021 11

对于这个数据框,我想按时间顺序绘制politicalization_sum 的过程。我尝试了以下方法:

per_week <- per_week %>%
  arrange(desc(week))

ggplot(per_week, mapping = aes(x = week, y = politicalization_sum)) +
  geom_point() +
  geom_smooth()

这样,x 轴从第 0 周开始到第 53 周,中间有很大的差距。如何让 x 轴从 2020 年的第 52 周开始并在 2021 年的第 3 周结束?

【问题讨论】:

从这里开始***.com/questions/32470414/… 并将年份和星期转换为日期。然后绘制 如果您希望在绘图中包含轴中断,您可以查看 ggbreak 包。 【参考方案1】:

这样的?

library(lubridate)
library(ggplot2)
library(dplyr)
per_week %>% 
  mutate(x = make_date(year)) %>% 
  mutate(date = x + lubridate::weeks(week-1)) %>% 
  ggplot(aes(date, politicalization_sum)) +
  scale_x_date(date_labels = "%Y (%b)")+
  geom_point()+
  geom_smooth()

【讨论】:

就是这样,谢谢!

以上是关于我如何按时间顺序绘制 R 中年份变化的周?的主要内容,如果未能解决你的问题,请参考以下文章

从 Aginity 工作台中的周数和年份获取一周的最后一天

如何使我的表格根据年份动态变化?

如何在 C++ 中使用一个变量对两部分链表进行排序?

R corrplot colorlegend 变化范围

如何使用冲积图(或桑基图)使用 R 显示类别随时间的变化

python - 如何将带有年份的周数转换为python pandas中的日期时间格式?