擅长:python、mysql、java
<p>您当然可以优化文件的读取:您可以直接将其读入NumPy数组,从而利用NumPy的原始速度。你有几个选择。如果RAM是一个问题,那么可以使用<a href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.memmap.html" rel="nofollow">memmap</a>,它将大部分文件保存在磁盘上(而不是RAM中):</p>
<pre><code># Each data point is a sequence of three 32-bit floats:
data = np.memmap(filename, mode='r', dtype=[('index', 'float32'), ('floati','float32'), ('floatq', 'float32')])
</code></pre>
<p>如果RAM不是问题,可以使用<a href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.fromfile.html" rel="nofollow">fromfile</a>将整个数组放入RAM中:</p>
<pre><code>data = np.fromfile(filename, dtype=[('index', 'float32'), ('floati','float32'), ('floatq', 'float32')])
</code></pre>
<p>然后可以使用Matplotlib通常的<code>plot(*data)</code>函数进行绘图,可能是通过另一个解决方案中提出的“放大”方法。</p>