Below is what I get running your code.
library(data.table)
#> Warning: package 'data.table' was built under R version 3.5.3
library(tidyverse)
#> Warning: package 'ggplot2' was built under R version 3.5.3
#> Warning: package 'tibble' was built under R version 3.5.3
#> Warning: package 'tidyr' was built under R version 3.5.3
#> Warning: package 'readr' was built under R version 3.5.3
#> Warning: package 'purrr' was built under R version 3.5.3
#> Warning: package 'dplyr' was built under R version 3.5.3
#> Warning: package 'stringr' was built under R version 3.5.3
#> Warning: package 'forcats' was built under R version 3.5.3
sidc<-fread("http://sidc.be/silso/DATA/SN_d_tot_V2.0.csv",sep = ';')
colnames(sidc) <- c("Year","Month","Day", "Fdate","Spots", "Sd","Obs" ,"Defin" )
sidc$Ymd <- as.Date(paste(sidc$Year, sidc$Month, sidc$Day, sep = "-"))
sidc<-sidc[Year>=2014,]
## Plot columns print hoizontal with filter statement:
A <- sidc %>% filter(Spots >=21 & Spots <=130)
ggplot(data=A) + geom_col(aes(x=Ymd,y=Spots)) + ggtitle("Plot with filter statement")

## But print as expected with out filter statement:
ggplot(data=sidc,aes(x=Ymd,y=Spots)) + geom_col() + ggtitle("Plot without filter statment")

Created on 2019-12-08 by the reprex package (v0.3.0.9000)
And here is the top of my sessionInfo()
> sessionInfo()
R version 3.5.1 (2018-07-02)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)