I have some geographic x,y,z data which I plot as follows
p<-ggplot(aes(x=x,y=y,fill=z),data=my_data)
I then apply a gradient
There are two versions of these scale functions, one for colour and one for fill. You just needed to use the fill versions, i.e. scale_fill_hue, etc.
colour
fill
scale_fill_hue