# Can someone explain the for loop on Multiple Plots?

My Code:

``````fig = plt.figure(figsize=(12,5)) #understand this, - basically assigning the size of the chart

for i in range(2): # I dont quite understand what the loop is doing here
start_index = i*12
end_index = (i+1)*12
subset = unrate[start_index:end_index]
ax.plot(subset['DATE'], subset['VALUE'])

plt.show()
``````

Hi lrosale1

Here the `range()` function creates a number sequence of 0, 1
Hence for the first iteration `i=0`, and for the second iteration. we have `i=2`.

The function `add_subplot(nrows, ncols, index)` will create an Axes object and add it to the figure `fig`, which is a container, to hold all our plots.

gives us
`ax = fig.add_subplot(2,1,1) (for first iteration, i=0)`
`ax = fig.add_subplot(2,1,2) (for second iteration, i=1)`

So, we’ll have a plot with 2 rows by 1 column (`nrows=2`, `ncols=1`); and the plot will have 2 subplots (1 and 2).

For the first iteration,
`start_index` will be `0`
`end_index` will be `12`
Hence, `unrate[0:12]`, i.e. the first 12 rows will be assigned to `subset`

Thus, subplot 1 will depict, `unrate[0:12]['DATE']` on the x-axis, and `unrate[0:12]['VALUE']` on the y-axis.

For the second iteration,
`start_index` will be `12`
`end_index` will be `24`
Hence, `unrate[12:24]` will be assigned to `subset`

Thus, the second subplot will depict, `unrate[12:24]['DATE']` on the x-axis, and `unrate[12:24]['VALUE']` on the y-axis.

Hope it helps.
Thanks.