从csv文件中重新遍历所有行并进行绘图

时间:2016-06-22 15:45:51

标签: python csv pandas plot

我需要从函数生成的csv文件中检索行:

fig, (
      (ax11, ax21, ax31, ax41),
      (ax12, ax22, ax32, ax42),
      (ax13, ax23, ax33, ax43),
      (ax14, ax24, ax34, ax44),
      (ax15, ax25, ax35, ax45),
      (ax16, ax26, ax36, ax46)
     ) = plt.subplots(6, 4, sharex=True, figsize=(13, 7))
ax11.plot(x,y)  # plot on top left axes
ax32.plot(x,y)  # plot on subplot in column 3, row 2

我排到了29s然后它跳到了最后几行,我还需要将这一列绘制成1对

1 个答案:

答案 0 :(得分:1)

您可以调整pd.options.display.max_rows选项,但不会影响您的图表,因此您的图表将包含您的所有数据

演示:

In [25]: df = pd.DataFrame(np.random.randint(0,100,size=(10, 3)), columns=list('ABC'))

In [26]: df
Out[26]:
    A   B   C
0  93  76   5
1  33  70  12
2  50  52  26
3  88  98  85
4  90  93  92
5  66  10  58
6  82  43  39
7  17  20  91
8  47  90  33
9  44  30  26

In [27]: pd.options.display.max_rows = 4

现在它最多显示4行

In [36]: df
Out[36]:
     A   B   C
0   93  76   5
1   33  70  12
..  ..  ..  ..
8   47  90  33
9   44  30  26

[10 rows x 3 columns]

但它会绘制所有数据

In [37]: df.plot.bar()
Out[37]: <matplotlib.axes._subplots.AxesSubplot at 0x49e2d68>

enter image description here

In [38]: pd.options.display.max_rows = 60

In [39]: df
Out[39]:
    A   B   C
0  93  76   5
1  33  70  12
2  50  52  26
3  88  98  85
4  90  93  92
5  66  10  58
6  82  43  39
7  17  20  91
8  47  90  33
9  44  30  26