title: Overlaying data in a candlestick chart using matplotlib
body: <p>My very 1st need is to overlay a curve over a candlestick chart.
  To draw this candlestick chart, <code>mplfinance</code> appears very nice. Unfortunately, I have found no way to overlay additional curve to the candlestick.</p>
  <p>Considering example below, if anyone of you knows how to overlay 'Noise' column over the candlesticks drawn from 'minutely' dataframe, this would be great!</p>
  <pre class="lang-py prettyprint-override"><code>import pandas as pd
  import mplfinance as mpf
  
  minutely = pd.DataFrame({'Date':[pd.Timestamp('2021-01-07 00:00:00'),
                                   pd.Timestamp('2021-01-07 00:01:00'),
                                   pd.Timestamp('2021-01-07 00:02:00'),
                                   pd.Timestamp('2021-01-07 00:03:00'),
                                   pd.Timestamp('2021-01-07 00:04:00')],
                            'Open':[36769.36, 36880.00, 36851.42,36922.19,37083.18],
                            'High':[36880.00, 36880.00, 36950.00, 37089.69, 37094.70],
                            'Low': [36760.00,  36817.64, 36810.03, 36922.13, 36565.49],
                            'Close':[36880.00, 36851.97, 36922.14, 37075.80, 36691.3]})
  
  noise = pd.DataFrame({'Date':[pd.Timestamp('2021-01-07 00:00:00'),
                                   pd.Timestamp('2021-01-07 00:01:00'),
                                   pd.Timestamp('2021-01-07 00:02:00'),
                                   pd.Timestamp('2021-01-07 00:03:00'),
                                   pd.Timestamp('2021-01-07 00:04:00')],
                            'Noise':[36779.36, 36870.00, 36881.42,36902.19,37103.18]})
  
  # Draw candlesticks
  minutely = minutely.set_index('Date')
  noise = noise.set_index('Date')
  mpf.plot(minutely, type='candle')
  </code></pre>
  <p>Not stopping here, I had in mind to use the 'old' <code>candlestick_ohlcv</code> function to draw a candlestick graph, then overlay data using native matplotlib capabilities.
  This gives the code below, but when displaying the candlesticks, the x scale appears meaningless.</p>
  <p>I should have only 5 candles, with a x scale going from 2020/01/07 00:00 to 2020/01/07 00:04.</p>
  <p>I can see the graph shows a x scale starting from 2020/01/06 16:48 to 2020/01/07 07:12.</p>
  <p>I don't understand this and candles are meaningless...</p>
  <pre class="lang-py prettyprint-override"><code>import pandas as pd
  import matplotlib.pyplot as plt 
  from mplfinance.original_flavor import candlestick_ohlc
  import matplotlib.dates as mpdates 
  
  minutely = pd.DataFrame({'Date':[pd.Timestamp('2021-01-07 00:00:00'),
                                   pd.Timestamp('2021-01-07 00:01:00'),
                                   pd.Timestamp('2021-01-07 00:02:00'),
                                   pd.Timestamp('2021-01-07 00:03:00'),
                                   pd.Timestamp('2021-01-07 00:04:00')],
                            'Open':[36769.36, 36880.00, 36851.42,36922.19,37083.18],
                            'High':[36880.00, 36880.00, 36950.00, 37089.69, 37094.70],
                            'Low': [36760.00,  36817.64, 36810.03, 36922.13, 36565.49],
                            'Close':[36880.00, 36851.97, 36922.14, 37075.80, 36691.3]})
  
  noise = pd.DataFrame({'Date':[pd.Timestamp('2021-01-07 00:00:00'),
                                   pd.Timestamp('2021-01-07 00:01:00'),
                                   pd.Timestamp('2021-01-07 00:02:00'),
                                   pd.Timestamp('2021-01-07 00:03:00'),
                                   pd.Timestamp('2021-01-07 00:04:00')],
                            'Noise':[36779.36, 36870.00, 36881.42,36902.19,37103.18]})
  
  minutely['Date'] = minutely['Date'].map(mpdates.date2num)
  
  plt.style.use('dark_background')
  fig, ax = plt.subplots() 
  candlestick_ohlc(ax, minutely.values, width = 0.6,  
                   colorup = 'green', colordown = 'red',  
                   alpha = 0.8) 
  # Setting labels  
  ax.set_xlabel('Date') 
  ax.set_ylabel('Price')
  # Formatting Date
  date_format = mpdates.DateFormatter('%d-%m-%Y %H:%M') 
  ax.xaxis.set_major_formatter(date_format) 
  fig.autofmt_xdate() 
  fig.tight_layout() 
  # show the plot 
  plt.show()
  </code></pre>
  <p>Please, would someone know of a way to overlay this external data to candlestick data?
  Thanks in advance for any help,
  Bests,</p>