The elevation of points on a hill is a scalar 'field'. It can
have a different value
at every point, but each one is a scalar value.
Imagine a lumpy bumpy irregular hill, and pick a point to talk
about, say,
somewhere on the side of the hill.
At that point, the directional derivative of the elevation is
the rate at which
the elevation changes leaving the point in that direction.
It has different values in different directions: If you're
looking up the hill, then
the d.d. is positive in that direction; if you're looking down
the hill, the d.d. is
negative in that direction. If you're looking along the side of
the hill, the d.d.
could be zero, because the elevation doesn't change in that
particular direction.
The directional derivative is a vector. The direction is
whatever direction you're
talking about, and the magnitude is the rate of change in that
direction.
The gradient is the vector that's simply the greatest positive
directional derivative
at that point. Its direction is the direction of the steepest
rise, and its magnitude
is the rate of rise in that direction.
If your hill is, say, a perfect cone, and you're on the side,
then the gradient is the
vector from you straight toward the top, with magnitude equal to
the slope of the
side of the cone. Any other vector is a directional derivative,
with a smaller slope,
and it isn't the gradient.