I'm guessing your data looks similar to this random patients example
library(tidyverse)
patients <- tibble(
    id = rep(1:50, each = 2),
    group = rep(c("Placebo", "Treatment"), each = 50),
    stage = rep(c("Pre", "Post"), times = 50),
    measurement = rnorm(100)
)
patients
#> # A tibble: 100 x 4
#>       id group   stage measurement
#>    <int> <chr>   <chr>       <dbl>
#>  1     1 Placebo Pre       -0.710 
#>  2     1 Placebo Post      -1.20  
#>  3     2 Placebo Pre       -0.513 
#>  4     2 Placebo Post      -0.0675
#>  5     3 Placebo Pre       -0.346 
#>  6     3 Placebo Post       0.467 
#>  7     4 Placebo Pre        0.626 
#>  8     4 Placebo Post       0.884 
#>  9     5 Placebo Pre        0.0290
#> 10     5 Placebo Post       1.43  
#> # ... with 90 more rows
A simple approach with ggplot2 would be something like this
ggplot(patients, aes(id, measurement)) +
    geom_line(aes(group = id, color = group))

Created on 2021-06-22 by the reprex package (v2.0.0)