title: Matplotlib plot Pandas df, fill between index values if condition
body: <p>I have a Pandas df:</p>
  <pre><code>           ro laws  ro ordos  
  January        468       579     
  February       216       231     
  March         1005       276      
  April         1044       250     
  May            962       276       
  June           999       568      
  July          1360       298      
  August          56       934      
  September      202       289       
  October        901       324       
  November      1056       412       
  December      1121       525
  </code></pre>
  <p>I plot it using matplotlib and it works as expected. I want to fill between the two lines but only when x axis is <code>'January'</code>, <code>'February'</code>, <code>'March'</code>.</p>
  <p>I tried:</p>
  <pre><code>ax.fill_between(plotMonths.index, plotMonths['ro laws'], plotMonths['ro ordos'], where=(plotMonths.index in ['January', &quot;February&quot;, 'March']),
                         facecolor='lightskyblue', 
                         alpha=0.2)
  </code></pre>
  <p>but it throws the error:</p>
  <pre><code>ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
  </code></pre>
  <p>I tried:</p>
  <pre><code>d = plotMonths.index.values.tolist() 
  ax.fill_between(d, plotMonths['ro laws'], plotMonths['ro ordos'], where=(d in ['January', &quot;February&quot;, 'March']),
                         facecolor='lightskyblue', 
                         alpha=0.2)
  </code></pre>
  <p>but it does nothing, the plot is un-filled.</p>
  <p>How can I fix this?</p>
  <p>Thank you.
  <a href="https://i.stack.imgur.com/qpEey.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/qpEey.png" alt="enter image description here" /></a></p>