重新排列 x 轴以显示 Julian 日期(例如 0-365)一次用于多年数据

Re-arranging the x-axis to show Julian Dates (e.g., 0-365) once for multi-year data

我已经包含了重现当前结果所需的数据和代码。我有一张针对不同个体的图表 (4),它们是在不同年份收集的数据。我目前将 x 轴作为 Julian Dates,因此它显示每年的日期。

我想让它只显示一次 0-365 的 x 轴,而不是重复多年。有没有好的方法可以做到这一点?我认为基本上我要问的是是否可以将这四行压缩成具有相同 x 轴和 y 轴的单个图形?

library(ggforce)
library(dplyr)
library(lubridate)

df <- read.csv("https://raw.githubusercontent.com/jhnhng/Data/main/NSD_Figure.csv")
df$t2  <- as.POSIXct(df$t2)

ggplot(ind_steps, aes(x = t2, y = NSD)) +
  labs(x = "Julian Date", y = "Net Squared Displacement") +
  geom_line() + theme_bw() +
  theme(axis.text.x = element_text(angle = 90)) +
  scale_x_datetime(date_breaks = '10 days', date_labels = '%j') +
  facet_wrap(~class, ncol = 1 , nrow = 4)
df$t3 <- as.numeric(format(df$t2, "%j"))

然后

ggplot(df, aes(x = t3, y = NSD)) +
  ...
  scale_x_continuous(breaks = scales::breaks_width(10)) +
  ...