title: Plotting an Indicator with matplotlib
body: <p>I rewrote a indicator from another language into Python but my plot doesn't look like right. This is a Picture how the Plot should look like
  <a href="https://i.stack.imgur.com/6YQbn.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/6YQbn.png" alt="enter image description here"></a></p>
  
  <p>But my plot look like this</p>
  
  <p><a href="https://i.stack.imgur.com/H5Juy.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/H5Juy.png" alt="enter image description here"></a></p>
  
  <p>Something it's wrong on the bottom part of my indicator but I don't how to fix it. My full code is <a href="http://pastebin.com/G2uxkJPX" rel="nofollow noreferrer">here</a> and <a href="http://DATE;TIME;VOLUME;OPEN;CLOSE;MIN;MAX%2007/01/2009;00:00:01;207135;.7198;.71;.7089;.7269%2008/01/2009;00:00:01;225330;.71;.7115;.6953;.7134%2009/01/2009;00:00:01;176534;.7116;.7027;.7008;.712%2012/01/2009;00:00:01;202139;.7022;.6789;.6774;.7023%2013/01/2009;00:00:01;140193;.6787;.6671;.6573;.6793%2014/01/2009;00:00:01;223053;.6672;.6645;.6576;.6812%2015/01/2009;00:00:01;252922;.6642;.6666;.6533;.6702%2016/01/2009;00:00:01;196322;.6666;.6731;.6643;.6797%2019/01/2009;00:00:01;163586;.6731;.6674;.665;.6845%2020/01/2009;00:00:01;231827;.6669;.6485;.6452;.6679%2021/01/2009;00:00:01;230175;.6486;.6579;.6456;.6659%2022/01/2009;00:00:01;214454;.6579;.6541;.6487;.6619%2023/01/2009;00:00:01;221048;.654;.6535;.6414;.6588%2026/01/2009;00:00:01;192533;.6536;.6618;.6489;.6645%2027/01/2009;00:00:01;202281;.6618;.6642;.6569;.6722%2028/01/2009;00:00:01;220706;.6642;.665;.6591;.6733%2029/01/2009;00:00:01;198448;.665;.6497;.6482;.6662%2030/01/2009;00:00:01;205757;.6496;.6352;.6342;.6508%2002/02/2009;00:00:01;184710;.6347;.6303;.6244;.6377%2003/02/2009;00:00:01;208219;.6302;.6487;.6298;.6547%2004/02/2009;00:00:01;224239;.6486;.6426;.635;.6533%2005/02/2009;00:00:01;212688;.6426;.6513;.64;.6583%2006/02/2009;00:00:01;195368;.6513;.6751;.6473;.6803%2009/02/2009;00:00:01;199914;.6751;.6746;.6624;.685%2010/02/2009;00:00:01;241247;.6746;.6569;.6481;.6755%2011/02/2009;00:00:01;200262;.6569;.6533;.6478;.6602%2012/02/2009;00:00:01;223955;.6533;.6568;.6428;.6617%2013/02/2009;00:00:01;168790;.6567;.6563;.6528;.6645%2016/02/2009;00:00:01;127199;.6564;.6529;.6471;.6564%2017/02/2009;00:00:01;202795;.6526;.6366;.6329;.653%2018/02/2009;00:00:01;190700;.6366;.639;.6336;.6433%2019/02/2009;00:00:01;189998;.639;.6446;.638;.6524%2020/02/2009;00:00:01;186257;.6445;.6449;.635;.6499%2023/02/2009;00:00:01;198175;.6448;.6405;.6398;.6549%2024/02/2009;00:00:01;197172;.6406;.6521;.6386;.6542%2025/02/2009;00:00:01;207287;.652;.6466;.6449;.6556%2026/02/2009;00:00:01;179738;.6467;.6466;.6455;.6553%2027/02/2009;00:00:01;216384;.6465;.6383;.6336;.6482%2002/03/2009;00:00:01;204848;.6383;.6291;.6278;.6401%2003/03/2009;00:00:01;204315;.6291;.6372;.6287;.6464%2004/03/2009;00:00:01;197206;.6372;.6465;.6282;.6528%2005/03/2009;00:00:01;190287;.6464;.6386;.6352;.6485%2006/03/2009;00:00:01;178074;.6387;.64;.6365;.6472%2009/03/2009;00:00:01;188777;.6397;.6343;.6302;.6452%2010/03/2009;00:00:01;192153;.6344;.6478;.6338;.649%2011/03/2009;00:00:01;170792;.6478;.6479;.6397;.6526%2012/03/2009;00:00:01;193571;.6479;.6538;.6409;.6578%2013/03/2009;00:00:01;144754;.6538;.6581;.6514;.6607%2016/03/2009;00:00:01;145159;.6576;.6593;.6525;.6639%2017/03/2009;00:00:01;147924;.6594;.6627;.6564;.6632%2018/03/2009;00:00:01;153325;.6627;.6781;.6561;.6818%2019/03/2009;00:00:01;200064;.6781;.6876;.6719;.6944%2020/03/2009;00:00:01;162349;.6876;.6868;.6847;.6932%2023/03/2009;00:00:01;183657;.6873;.7038;.6872;.7064%2024/03/2009;00:00:01;190962;.7038;.6991;.693;.7095%2025/03/2009;00:00:01;172774;.6993;.6987;.6901;.7051%2026/03/2009;00:00:01;148233;.6987;.7019;.6975;.7042%2027/03/2009;00:00:01;131604;.7019;.6937;.686;.7032%2030/03/2009;00:00:01;199669;.6937;.6799;.6767;.6938%2031/03/2009;00:00:01;200324;.68;.6919;.6788;.6971%2001/04/2009;00:00:01;215160;.6921;.6981;.6852;.7002%2002/04/2009;00:00:01;237514;.6981;.7196;.697;.72%2003/04/2009;00:00:01;206219;.7196;.7147;.7054;.723%2006/04/2009;00:00:01;217488;.7152;.7065;.7062;.721%2007/04/2009;00:00:01;231459;.7066;.712;.7039;.7171%2008/04/2009;00:00:01;217515;.7119;.7081;.7029;.7131%2009/04/2009;00:00:01;192404;.708;.7183;.7047;.7206%2010/04/2009;00:00:01;35925;.7184;.7194;.7169;.721%2013/04/2009;00:00:01;111317;.7199;.7316;.7183;.7328%2014/04/2009;00:00:01;222549;.7316;.7228;.7197;.7321%2015/04/2009;00:00:01;236873;.7229;.7276;.7144;.7299%2016/04/2009;00:00:01;244340;.7277;.7198;.7133;.732%2017/04/2009;00:00:01;151602;.7198;.7217;.7164;.7228%2020/04/2009;00:00:01;213079;.7222;.6975;.695;.725%2021/04/2009;00:00:01;166818;.6976;.7069;.6969;.7132%2022/04/2009;00:00:01;230295;.707;.7061;.6997;.7119%2023/04/2009;00:00:01;225838;.706;.7121;.7025;.7158%2024/04/2009;00:00:01;139174;.7121;.7228;.7103;.724%2027/04/2009;00:00:01;312098;.7223;.7064;.7056;.7223%2028/04/2009;00:00:01;316433;.7064;.7069;.6985;.7103%2029/04/2009;00:00:01;218291;.7069;.7252;.7065;.73%2030/04/2009;00:00:01;291588;.7252;.7289;.7232;.7385%2001/05/2009;00:00:01;170823;.729;.7302;.7246;.7349%2004/05/2009;00:00:01;215069;.7307;.7415;.7307;.7421%2005/05/2009;00:00:01;274169;.7415;.7388;.7369;.748%2006/05/2009;00:00:01;328149;.7388;.748;.7333;.7504%2007/05/2009;00:00:01;326602;.7479;.7549;.7456;.7617%2008/05/2009;00:00:01;249332;.7549;.7683;.7504;.7709%2011/05/2009;00:00:01;322413;.7688;.7593;.7565;.7716%2012/05/2009;00:00:01;349797;.7591;.7674;.7558;.7698%2013/05/2009;00:00:01;389011;.7676;.7524;.7504;.7705%2014/05/2009;00:00:01;388758;.7525;.7589;.7461;.762%2015/05/2009;00:00:01;322189;.7589;.749;.7473;.7608%2018/05/2009;00:00:01;325154;.7485;.764;.7443;.7669%2019/05/2009;00:00:01;328829;.7642;.7745;.7623;.7786%2020/05/2009;00:00:01;352149;.7743;.774;.7682;.7811%2021/05/2009;00:00:01;313129;.774;.7804;.7665;.7807%2022/05/2009;00:00:01;294175;.7803;.7824;.7765;.787%2025/05/2009;00:00:01;133134;.7819;.7805;.7768;.7837%2026/05/2009;00:00:01;266208;.7804;.7873;.7699;.7887%2027/05/2009;00:00:01;257801;.7874;.7782;.7741;.7892%2028/05/2009;00:00:01;250271;.7782;.7853;.7754;.7869%2029/05/2009;00:00:01;245473;.7851;.8009;.7842;.8018%2001/06/2009;00:00:01;212151;.8014;.811;.7988;.8154%2002/06/2009;00:00:01;215003;.8109;.8186;.8045;.8232%2003/06/2009;00:00:01;263816;.8186;.8019;.7928;.8265%2004/06/2009;00:00:01;296754;.8019;.8;.7882;.8091%2005/06/2009;00:00:01;212343;.8;.7921;.7913;.8123%2008/06/2009;00:00:01;211255;.7926;.7915;.7823;.799%2009/06/2009;00:00:01;270679;.7915;.8005;.785;.8045%2010/06/2009;00:00:01;198830;.8005;.8029;.7964;.8136%2011/06/2009;00:00:01;206113;.8028;.82;.8025;.8239%2012/06/2009;00:00:01;233604;.82;.8138;.8056;.8209%2014/06/2009;00:00:01;8834;.8138;.8079;.8056;.8138%2015/06/2009;00:00:01;189632;.8078;.7942;.7902;.8093%2016/06/2009;00:00:01;245326;.7942;.7879;.7858;.8069%2017/06/2009;00:00:01;274294;.7879;.7965;.7846;.7998%2018/06/2009;00:00:01;229882;.7965;.7994;.7909;.8055%2019/06/2009;00:00:01;143000;.7994;.8054;.7981;.8139%2022/06/2009;00:00:01;155604;.8054;.7832;.7807;.8055%2023/06/2009;00:00:01;214559;.7831;.7941;.7786;.798%2024/06/2009;00:00:01;227950;.7941;.7968;.7925;.8056%2026/06/2009;00:00:01;107853;.7977;.8073;.797;.8089%2029/06/2009;00:00:01;153894;.8074;.8095;.7979;.8116%2030/06/2009;00:00:01;208890;.8095;.8062;.8034;.8156%2001/07/2009;00:00:01;195160;.8062;.8089;.8018;.8109%2002/07/2009;00:00:01;205875;.809;.7927;.7898;.8095%2003/07/2009;00:00:01;116122;.7927;.7967;.7918;.8008%2006/07/2009;00:00:01;169977;.7962;.7973;.7876;.7983%2007/07/2009;00:00:01;207283;.7974;.7868;.7851;.8039%2008/07/2009;00:00:01;225975;.7866;.7773;.772;.7891%2009/07/2009;00:00:01;211714;.7773;.7843;.7764;.7865%2010/07/2009;00:00:01;203193;.7842;.7789;.7736;.7844%2013/07/2009;00:00:01;224193;.7786;.7837;.7697;.7848%2014/07/2009;00:00:01;195218;.7836;.7946;.781;.7952%2015/07/2009;00:00:01;192817;.7946;.8016;.7921;.8058%2016/07/2009;00:00:01;208974;.8015;.8031;.7956;.8073%2017/07/2009;00:00:01;168251;.8031;.8018;.7964;.8043%2020/07/2009;00:00:01;171155;.8013;.8136;.7999;.8181%2021/07/2009;00:00:01;162896;.8137;.8149;.8085;.8193%2022/07/2009;00:00:01;162907;.8149;.8152;.8096;.8215%2023/07/2009;00:00:01;159347;.8153;.8142;.8104;.8223%2024/07/2009;00:00:01;146476;.8142;.8171;.812;.819">here</a> is the data.csv file i'm using.</p>
  
  <pre><code>def matrixSeries(matrix):
  
      nn = 10  #Smoother
      # --Sup/Res Detail
      SupResPeriod = 50
      SupResPercentage  = 100
      PricePeriod = 16
      ob = 200 #Overbought
      os = -200 #Oversold 
      #OBOS = false
      #dynamic = true
      high = np.array(r['max'])
      low = np.array(r['min'])
      close = np.array(r['close'])
      ys1 = (high + low + close * 2 ) / 4
          rk3 = ta.EMA(ys1, nn) 
      rk4 = ta.STDDEV(ys1, nn)
          rk5 = (ys1 - rk3) * 200 /rk4
      rk6 = ta.EMA(rk5, nn)
      up = ta.EMA(rk6, nn)
      down = ta.EMA(up, nn)
  
      # remove nans in array
      upNans = np.isnan(up)
      up[upNans] = 0 
      downNans = np.isnan(down)
      down[downNans] = 0 
  
      Oo = np.where(up&lt;down, up, down)    
      Cc= np.where(up&lt;down, down, up )
  
      #color
      if matrix == 'color':
  
          color = []
          aa = Oo &gt; Cc
          bb = up &gt; down 
          color = np.where( aa , 'red' , np.where(bb, 'green','red')  )
          return color
  
      #Body Calculations
      bodyHigh = np.where(up&gt;down, up, down) 
      bodyLow = np.where(Oo&lt;down, up, down)
  
      bodyCover = np.where( np.any(up&gt;0) and np.any(down&gt;0), bodyLow, np.where( np.any(up&lt;0) and np.any(down&lt;0), bodyHigh,0))
      bodyCover = bodyCover   
      if matrix == 'cover':
          return bodyCover
      if matrix == 'top':
          return Oo
      if matrix == 'bottom':
          return Cc
  
  
  ax3 = plt.subplot2grid((6,4), (0,0),sharex=ax1, rowspan=2, colspan=4) 
  ax3.bar(r['date'], matrixSeries('top'),  width=1.1,linewidth=0, color=matrixSeries('color'))
  ax3.bar(r['date'], matrixSeries('bottom'),  width=1.1,linewidth=0, color=matrixSeries('color'))
  ax3.bar(r['date'], matrixSeries('cover'), width=1.1, linewidth=0, color='black' )
  ax2.axes.xaxis.set_ticklabels([])
  plt.show()
  </code></pre>