title: How to force zero (0) to the center of an axis in matplotlib
body: <p>I'm trying to plot percent change data and would like to plot it such that the y axis is symmetric about 0.
  i.e. 0 is in the center of the axis.</p>
  
  <pre class="lang-py prettyprint-override"><code>import matplotlib.pyplot as plt
  import pandas as pd
  data = pd.DataFrame([1,2,3,4,3,6,7,8], columns=['Data'])
  data['PctChange'] = data['Data'].pct_change()
  data['PctChange'].plot()
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/zW0BU.png" rel="noreferrer"><img src="https://i.stack.imgur.com/zW0BU.png" alt="percent change on default y axis"></a></p>
  
  <p>This is different from <a href="https://stackoverflow.com/questions/31556446/how-to-draw-axis-in-the-middle-of-the-figure">How to draw axis in the middle of the figure?</a>. The goal here is not to move the x axis, but rather, change the limits of the y axis such that the zero is in the center. Specifically in a programmatic way that changes in relation to the data.</p>