<p dir="auto">I know this looks like a duplicate of <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5684452" data-permission-text="Title is private" data-url="https://github.com/pandas-dev/pandas/issues/1636" data-hovercard-type="issue" data-hovercard-url="/pandas-dev/pandas/issues/1636/hovercard" href="https://github.com/pandas-dev/pandas/issues/1636">#1636</a>, but even with pandas 0.8.1, I don't get the expected plotting behaviour:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="In [1]: from numpy import arange

In [2]: import matplotlib.pyplot as plt

In [3]: import pandas

In [4]: pandas.__version__
Out[4]: '0.8.1'

In [5]: plt.figure()
Out[5]: &lt;matplotlib.figure.Figure at 0x33afd50&gt;

In [6]: plt.plot(arange(12), arange(12), color='green')     # this line is green
Out[6]: [&lt;matplotlib.lines.Line2D at 0x337c150&gt;]

In [7]: pandas.Series(arange(12) + 1).plot(color='green')   # this line is blue
Out[7]: &lt;matplotlib.axes.AxesSubplot at 0x33c80d0&gt;"><pre class="notranslate"><code class="notranslate">In [1]: from numpy import arange

In [2]: import matplotlib.pyplot as plt

In [3]: import pandas

In [4]: pandas.__version__
Out[4]: '0.8.1'

In [5]: plt.figure()
Out[5]: &lt;matplotlib.figure.Figure at 0x33afd50&gt;

In [6]: plt.plot(arange(12), arange(12), color='green')     # this line is green
Out[6]: [&lt;matplotlib.lines.Line2D at 0x337c150&gt;]

In [7]: pandas.Series(arange(12) + 1).plot(color='green')   # this line is blue
Out[7]: &lt;matplotlib.axes.AxesSubplot at 0x33c80d0&gt;
</code></pre></div>
<p dir="auto">This bug is easy to reproduce:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="def printA(group):
    print group.A.values[0]
    return 0
pandas.DataFrame({'A': [0,0,1,1], 'B': [0,1,0,1]}).groupby('A').apply(printA)"><pre class="notranslate"><code class="notranslate">def printA(group):
    print group.A.values[0]
    return 0
pandas.DataFrame({'A': [0,0,1,1], 'B': [0,1,0,1]}).groupby('A').apply(printA)
</code></pre></div>
<p dir="auto">This should print</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="0
1"><pre class="notranslate"><code class="notranslate">0
1
</code></pre></div>
<p dir="auto">and return a <code class="notranslate">Series</code> containing two zeroes.  Although it does return the expected <code class="notranslate">Series</code>, it prints</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="0
0
1"><pre class="notranslate"><code class="notranslate">0
0
1
</code></pre></div>
<p dir="auto">So, the function <code class="notranslate">printA</code> is being applied to the first group twice.  This doesn't seem to affect the eventual returned result of apply, but it duplicates any side effects, and if <code class="notranslate">printA</code> performed some expensive computation, it would increased the time to completion.</p>