Because you are using factors, which is different from @FJCC 's numeric vars. From what I understand from the documentary, geom_line() attempts to draw a line at each factor level. Specifying that they all belong to the same group does the trick.
Does the code below solve your problem?
DF <- data.frame(Xval = as_factor(LETTERS[1:5]), Yval = 11:15)
ggplot(DF, aes(x = Xval, y = Yval, group = 1)) + geom_point() + geom_line()
JW