Я бы рекомендовал использовать ' loadtxt ', который на самом деле находится в библиотеке NumPy. В Matplotlib (csv2rec) есть связанные функции, но Matplotlib фактически стандартизирует loadtxt.
Вот как это работает:
from matplotlib import pyplot as PLT
with open('name_of_your_file.csv') as f:
v = NP.loadtxt(f, delimiter=",", dtype='float', comments="#", skiprows=1, usecols=None)
'v', объект, возвращаемый из 'loadtxt', является массивом n x m NumPy.
'loadtxt' принимает файл или дескриптор файла. Пример выше имеет большую часть сигнатуры метода.
'skiprows' - это целое число, которое определяет количество строк, считая от вершины, которые вы хотите пропустить; обычно устанавливается значение «1», чтобы пропустить строку заголовка; «usecols» начинается с «0» и представляет собой список, в котором перечислены столбцы, которые вы хотите включить («None» - значение по умолчанию и означает «включить все») Другие параметры работают как положено.
Чтобы построить гистограмму из этих данных:
from matplotlib import pyplot as PLT
v_hist = NP.ravel(v) # 'flatten' v
fig = PLT.figure()
ax1 = fig.add_subplot(111)
n, bins, patches = ax1.hist(v_hist, bins=50, normed=1, facecolor='green')
PLT.show()