how to record an empirical distribution function? Say I have the numbers $$ 15,  10,  2, 3 ,1, 0 ,4, 5, 5,3,3,4,2,1,4,5$$
From my understanding, we are to let the y range from 0 to 1 with $\frac{1}{16}$ intervals. But I don't know how the x- axis would work since there seems to multiples of the same number. 
 A: It appears that you are to graph the cumulative distribution function for a discrete PDF based on a scant 16 samples.
There will be a jump in the graph of $\frac{1}{16}$ at $x=0$ because there is only one $0$.
There will be a jump in the graph of $\frac{2}{16}$ at $x=1$ and $x=2$ because there are two $1$s and two $2$s.
There will be a jump of $\frac{3}{16}$ at $x=3,\,4\,5$ etc.
The function will look like the following (I have scaled the $x$-axis to compress the graph horizontally and shaded the region below the graph.)

A: Here are your $n = 16$ observations listed in order:
x = sort(c(15, 10, 2, 3 ,1, 0, 4, 5, 5, 3, 3, 4, 2, 1, 4, 5))
x
[1]  0  1  1  2  2  3  3  3  4  4  4  5  5  5 10 15

You are correct that some of the values repeat.  Here is a tabulation:
table(x)
x
 0  1  2  3  4  5 10 15 
 1  2  2  3  3  3  1  1 

There are only eight different values (all integers) among the 16.
So your ECDF will have eight jump points, with jumps of varying sizes. Each jump will be by a multiple of $1/16.$
Here is a plot of the ECDF from R statistical software. You did not
give your book's formal definition of ECDF, so I will let you match
the definition with the plot and provide whatever explanation is
necessary.
plot(ecdf(x))


Notes: A normal probability plot (with data on the horizontal axis) can be viewed as a version of the ECDF with the vertical
axis distorted in a way that will make the points lie roughly
along a straight line--provided that the data are randomly sampled from a normal distribution. 
qqnorm(x, datax=T);  qqline(x, datax=T)


For your data some of the points lie near a straight line, but
two of the points are substantially away from the line. This may indicate that your sample is not from a normal distribution. In fact, the Shapiro-Wilk test of normality shows a small P-value, once more casting doubt on the normality of the data.
shapiro.test(x)

        Shapiro-Wilk normality test

data:  x
W = 0.79524, p-value = 0.002356

