You cannot get a histogram with the y axis representing the values of list elements.
Per definition a histogram gives the number of elements, which fall into certain bins, or the probability to find the element in a certain bin.
plt.hist is plotting function that draws a bar chart from such a histogram.
So what happens when you call plt.hist(s, normed=True, bins=5) is that the normalized input array s = [ 3, 10, 0, 7, 4] is divided into 5 bins between 0 and 10. There is exactly one number from s falling into each bin, so all bars in the hisogram plot have the same height.

Since in this case you don't actually want to have a histogram at all, but only a bar chart of the values, you should use plt.bar with the array s as height argument and some index as position.
from __future__ import division
import numpy as np
import matplotlib.pyplot as plt
a = ["some file", "22", "43", "11","34", "26"]
r = list(map(int, (a[1], a[2], a[3], a[4], a[5])))
s = np.array([int((x - min(r))/(max(r) - min(r)) * 10) for x in r])
plt.bar(np.arange(len(s)), s)
plt.show()
