$TextStyle = {FontFamily -> Times, 
        FontSize -> 14}
nmax = 15
ellmax = 5

Do[
Plot[
        BesselJ[ell + 1/2, x], {x, 0, 
          100}, 
PlotRange -> {{0, 100}, {-1, 
              1}}, 
Epilog -> 
          Text[ToString[ell], {60, 0.5}]], 
{ell, 0, 
        15}]

<< NumericalMath`BesselZeros`
Do[x[ell] = BesselJZeros[ell + 1/2, nmax], 
{ell, 0, 
        ellmax}]
Do[
Do[
        xp[n, ell] = x[ell][[n]], {n, 1, 
          nmax}], 
{ell, 0, 
        ellmax}]
Do[Do[
Ener[n, ell] = x[ell][[n]]^2, {n, 1, 
          nmax}], 
{ell, 0, ellmax}]

ell = 0
Do[
plR[n] = 
        Plot[BesselJ[ell + 1/2, r*xp[n, ell]]/Sqrt[r], {r, 0, 
            1}, 
PlotRange -> {{0, 1}, {-5, 
                5}}], 
{n, 1, nmax}]

levels = 
        Table[Line[{{ell - 0.3, Ener[n, ell]}, 
{ell + 0.3, 
                Ener[n, ell]}}], 
{n, 1, nmax}, {ell, 0, 
            ellmax}];
qnos = 
        Table[Text[{ToString[n], ToString[ell]}, 
{ell, 
              Ener[n, ell]}, {0, -1}], 
{n, 1, 
            nmax}, {ell, 0, 
            ellmax}];

Do[Do[
        Ener[n, ell] = xp[n, ell]^2, 
{n, 1, nmax}], {ell, 
        0, ellmax}]
\(Plot[
      0, {x, \(-1\), 
        3}, 
PlotRange -> {{\(-0.5\), 
            ellmax + 0.5}, {0, 
            415}}, 
AxesOrigin -> {\(-0.5\), 
          0}, 
AxesLabel -> {"ell", "energy"}, 
Ticks -> {{0, 1, 2, 3, 4, 5}, {0, 100, 200, 300, 
            400}}, 
Epilog -> {levels, 
          qnos}]\)