There are a couple of reasons for this:
-
Live charts are formed based on the ticks received, as there can be hundreds of ticks in a single minute, a chart can’t capture all those ticks and will only show what is captured.
-
When you reopen or refresh the charts, the prices are fetched from historical data. As there can be a difference between live ticks and the number of stored in historical data, there may be a slight difference in how the chart appears.
You can check out these two topics to learn more here and here.
Also, there can be a difference between the OHLC in intraday and daily charts, this is because daily candles are updated as per the bhavcopy received from the exchange. Explained here.