Matplotlib中的直方图与输入文件

Ark*_*avo 5 python matplotlib histogram

我希望从包含原始数据(.txt)的输入文件在Matplotlib中创建直方图.我在引用输入文件时遇到问题.我想它应该是一个相当小的程序.任何Matplotlib大师,任何帮助?

我不是要求代码,一些输入应该让我正确的方式!

dou*_*oug 9

我建议使用实际上在NumPy库中的' loadtxt '.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)
Run Code Online (Sandbox Code Playgroud)

从'loadtxt'返回的对象'v'是一个nxm NumPy数组.

'loadtxt'接受文件或文件描述符.上面的实例具有大部分方法签名.'skiprows'是一个整数,指定从您想要跳过的顶部开始计数的行数; 通常将其设置为"1"以跳过标题行; 'usecols'从'0'开始,是一个列出你想要包含的列的列表('None'是默认值,意思是'include all').其他参数按预期工作.

要从此数据绘制直方图:

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()
Run Code Online (Sandbox Code Playgroud)