f = Sin[x + y^2]; gradient = D[f, {{x, y}}];
StreamDensityPlot[{gradient, f}, {x, -2, 2}, {y, -2, 2}, Mesh -> 5, ColorFunction -> "BeachColors", MaxRecursion -> 1]