如何获得5 * 5尺寸的子图

时间:2019-07-11 10:15:25

标签: python matplotlib

I am looking for an Output like this我想从CSV文件中绘制数据,该文件具有1200万行和16列。我想在每次迭代中在第一列(x轴)和其余列之间进行绘制。

import pandas as pd
from matplotlib import pyplot as plt

data=pd.read_csv('measurement.csv',header=None)

for x in range(1,len(data.columns)):  
    ax=plt.subplot(5,5,x)
    plt.plot(data[0],data[x])
 plt.show()

1 个答案:

答案 0 :(得分:0)

将plt.show()移出循环,这是阻塞的,因此将不允许您构建整个图形。

由于我没有您的数据集,因此无法完全像您实施代码那样测试此代码,但我认为其余都很好。 (除了16列不会为您提供5 * 5的网格)

from matplotlib import pyplot as plt
import numpy as np

data = np.random.random((16, 100))
for x in range(1, data.shape[0]):
    ax = plt.subplot(5, 5, x)
    plt.plot(data[0], data[x])

plt.show()

这是通过一些随机的numpy数据完成的,但也应该与您的数据集一起使用。