The difficulty with your data is that the reflectance data for each point are in separate columns
of your dataframe. As @andresrcs mentioned, you need to reshape your data to a "long" format,
where all the reflectance values are in a single column, and there is a new column describing which
point the values come from. Here's an example with some canned data:
library("tidyverse")
# get some spectral data
data("flowers", package = "pavo")
flowers <- flowers[,1:5]
# pivot wide to long
long_flowers <- gather(flowers, key = "Species", value = "Reflectance", 2:5)
ggplot(data = long_flowers,
mapping = aes(x = wl, y = Reflectance)) +
geom_line(mapping = aes(linetype = Species, color = Species))

With your code it would look like (caveat: I can't test if this works!)
os2 <- tidyr::gather(original_spectro, key = "Point", value = "Reflectance", Ponto_01, Ponto_02, Ponto_03, Ponto_04)
ggplot()+
geom_line(data=os2, aes(x=Comprimento_de_onda_nm, y=Reflectance, linetype = Point, color = Point), size = 1.2) +
xlab('Wavelength (nm)')+ylab('Reflectance (dimensionless)')+
ggtitle("Reflectance curve", subtitle = "November, 2017")+
theme(
plot.title=element_text(hjust=0.5, face='bold', size = 14),
plot.subtitle = element_text(hjust=0.5, size = 12)
)+
theme(legend.key.width=unit(2,"cm"),legend.key.height=unit(0.5,"cm"),
legend.position = c(0.85, 0.75))+
labs(linetype = "Sampling points")
Created on 2019-04-14 by the reprex
package (v0.2.0).