Is there a way of overlaying a mathematical function on top of data using ggplot?
## add ggplot2
library(ggplot2)
# function
eq = function(x){x*x}
# Data
Given that your question title is "plotting functions in R", here's how to use curve to add a function to a base R plot.
Create data as before
eq = function(x){x*x}; x = (1:50); y = eq(x)
Then use plot from base graphics to plot the points followed by curve with the add=TRUE argument, to add the curve.
plot(x, y, xlab = "X-axis", ylab = "Y-axis")
curve(eq, add=TRUE)