In ggplot you can make ticks cross the x-axis with
ggplot(mtcars, aes( mpg, wt)) + geom_point() + theme( axis.text = element_blank(), axis.ticks.length.x = unit(c(-.5,.5), "cm"))

The same code for y axis doesn't seem to work. I thought it was a issue with margins but that doesn't seem to be the case.
ggplot(mtcars, aes( mpg, wt)) + geom_point() + theme( axis.text = element_blank(), axis.ticks.length.y = unit(c(-.5,.5), "cm"))
