Plotting: Is anyone familiar with gradientfieldplot command?

I'm going to assume that "everything" includes some simple ContourPlot and StreamPlot attempts, but that you are getting mired in the style details of your plots (missing streamlines, streamlines not where you want them, colors, etc.)

To draw the charge distributions, we can use Graphics.

gP1 = Graphics[{PointSize[Large], Point[{14, 10}]}];
gP2 = Graphics[{PointSize[Large], Point[{7, 10}], Point[{21, 10}]}];
gP3 = Graphics[{Thickness[Large], Line[{{8, 7}, {20, 7}}], Line[{{8, 13}, {20, 13}}]}];

For the plots, we first need to look up the expressions for the potentials of a point charge and a charged line segment.

h[x_, y_] = 1/Sqrt[x^2 + y^2];
h[x_, y_, L_] = Log[(Sqrt[(x - L/2)^2 + y^2] - (x - L/2))/
                    (Sqrt[(x + L/2)^2 + y^2] - (x + L/2))];

Then we need to move these expressions around to represent our charge distributions.

f1[x_, y_] = h[x - 14, y - 10];

We can use ContourPlot on the f functions to get the equipotential lines. Note that ContourPlot uses ContourStyle instead of PlotStyle to change the color of the lines.

cP = ContourPlot[f1[x, y], {x, 0, 28}, {y, 0, 20},
       Contours -> 4, ContourShading -> None, ContourStyle -> Blue, 
       FrameTicks -> {Range[0, 28, 2], Range[0, 20, 2]}];

The field lines are perpendicular to the equipotential lines, so they are related to the gradient of the potential functions.

g1[x_, y_] = D[f1[x, y], {{x, y}}];

We can plot the field lines using StreamPlot. Here is where getting to know the options pays off. First, we don't want arrowheads on our lines, so we put StreamStyle->"Line". In your picture, you only have 8 streamlines, so we try StreamPoints->8 which may give unsatisfactory results depending on the plot (it worked great for PlotRange->{{0,20},{0,20}}). So, we take more control and indicate exactly which points we want to start our streams. Note that StreamPlot uses StreamColorFunction instead of PlotStyle to change the color of the lines.

sP = StreamPlot[g1[x, y], {x, 0, 28}, {y, 0, 20}, 
  StreamStyle -> "Line", 
  StreamPoints -> ({14, 10} + {Cos[#], Sin[#]} & /@ Range[0, 7Pi/4, Pi/4]), 
  StreamColorFunction -> Function[{x, y}, Darker@Yellow]];

Finally, we combine the plots. I start with the contour plot because it has the plot range and ticks defined.

Show[cP, sP, gP1, AspectRatio -> Automatic]

field lines and equipotential lines of point charge

After defining your f functions and adjusting the options on the plots, you can generate plots for the other two examples.

equipotential and field lines of dipole

equipotential and field lines of oppositely charged line segments


I would check out first Michael Trott blog: On the Importance of Being Edgy—Electrostatic and Magnetostatic Problems with Sharp Edges. From that you can easily construct:

ϕLineSegment[{x_, y_, z_}] = 
 WolframAlpha[
    "electric potential of a charged line segment", {{"Result", 1}, 
     "Input"}][[1]] /. {Subscript[ϵ, 0] -> 1/(4 Pi), l -> 1, 
   Q -> 1}

enter image description here

Show[

 ContourPlot[ϕLineSegment[{x - 1/2, 0, 
     z}] + ϕLineSegment[{x + 1/2, 0, z}], {x, -1.5, 
   1.5}, {z, -1.5, 1.5}, ColorFunction -> "BeachColors", 
  Contours -> 10, PlotPoints -> 60],


 StreamPlot[
  Evaluate@Grad[ϕLineSegment[{x - 1/2, 0, 
       z}] + ϕLineSegment[{x + 1/2, 0, z}], {x, z}], {x, -1.5, 
   1.5}, {z, -1.5, 1.5}, StreamStyle -> Black],

 Graphics[{Red, Thick, Line[{{-.5, -.5}, {-.5, .5}}], 
   Line[{{.5, -.5}, {.5, .5}}]}]

 ]

enter image description here

For the rest of your plots there are quite a few Demonstrations. For example:

Electric Field Lines Due to a Collection of Point Charges

**Electric Field Lines Due to a Collection of Point Charges**