Может быть, это то, что вы ищете? Хотя уровни со2 на самом деле не сильно меняются во времени с каждой пробиркой, поэтому, возможно, я не понимаю, что вы пытаетесь изобразить.
library(tidyverse)
df <- data.frame(Time = c(0L, 2L, 4L, 6L, 8L, 10L, 12L, 14L, 16L, 18L), Volume1 = c(14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L), CO21 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Volume2 = c(13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5, 13.5), CO22 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), Volume3 = c(13.5, 13.5, 13.5, 13.5, 13, 12.5, 12.5, 12, 12, 11.5), CO23 = c(0, 0, 0, 0, 0.5, 1, 1, 1.5, 1.5, 2), Volume4 = c(13.5, 13.5, 13, 12.5, 12, 11, 9, 7.5, 5.5, 4.5), CO24 = c(0, 0, 0.05, 1, 1.5, 2.5, 4.5, 6, 8, 9))
df1 <-
df %>%
pivot_longer(cols = -Time) %>%
mutate(name = str_replace(name, "(\\d)$", ",\\1")) %>%
separate(name, c("name", "tube")) %>%
group_by(Time, tube) %>%
summarize(co2 = sum(value))
ggplot(df1, aes(x = Time, y = co2, color = tube)) +
geom_line() +
geom_point()