Maybe this is what you are looking for. You could convert your time variable to an ordered factor using df$time <- factor(df$time, levels = paste0("T", 1:109))
:
df$time <- factor(df$time, levels = paste0("T", 1:109))
library(ggplot2)
ggplot(df, aes(x = time, color = File)) +
geom_point(aes(y = log(BP01)), shape = 16) +
geom_point(aes(y = n01), shape = 4)
DATA
df <- structure(list(P = c(
"P01", "P01", "P01", "P01", "P01", "P01",
"P02", "P02", "P02"
), Experiment = c(
"Exp1", "Exp2", "Exp3",
"Exp4", "Exp5", "Exp6", "Exp1", "Exp2", "Exp3"
), File = c(
"File01",
"File01", "File01", "File01", "File01", "File01", "File02", "File02",
"File02"
), Period = c(
"Baseli…", "Baseli…", "Baseli…",
"140", "140", "140", "140", "140", "140"
), n01 = c(
13.7, 13.3,
12.5, 3.08, 3.23, 3.31, 3.08, 3.23, 3.31
), n02 = c(
91.5, 93.7,
88.3, 59.3, 67.1, 64, 59.3, 67.1, 64
), n03 = c(
19.3, 18.8, 18,
17.6, 18.4, 19.5, 17.6, 18.4, 19.5
), BP01 = c(
91.6, 92.3, 93.2,
83.7, 84.6, 85, 83.7, 84.6, 85
), BP02 = c(
144, 144, 143, 98.8,
101, 101, 98.8, 101, 101
), Rates = c(
140L, 140L, 140L, 140L,
140L, 140L, 140L, 140L, 140L
), time = c(
"T1", "T2", "T3", "T4",
"T5", "T6", "T4", "T5", "T6"
)), class = "data.frame", row.names = c(
NA,
-9L
))