I have no idea what’s going on here and after spending a couple of hours attempting to debug this I’m almost certainly convinced this is a bug with Shinobi Charts. I’m calling -reloadData frequently, due to the fact that SCharts can’t deal with the number of column I’m attemping to show, so I reload the data when the user has stopped dragging to display the currently visible area. The problem isn’t with the columms, but it’s with the area series. The data for this series is immutable, so I’m not changing it every reload. This work fine, I set the default range before the reload, call reload, then draw everything again. Nothing bad happens. Normally it looks like this:
However, after around 40 refreshes, the chart starts to slowly slip into a really strange drawing behavior. The peaks begin to flatten out, ranges start behaving incorrectly, and graphical glitches start to happen. At around 60 refreshes this is what the chart displays:
It only gets worse from there, to the point where no data is even visible, even though the correct range has most definitely been set. I can rule out the following:
- It is not a data issue. The data for the area chart is immutable and through multiple verifications is returning exactly the same data every single refresh.
- It is not a range-setting issue. I have veified each and every range each time this starts to slip into weird behavior, and the ranges are exactly as expected.
The strange part is that if I drag the chart around for a couple of seconds without letting it reload, it quickly reverts back to the correct apperance, but only until the next reload, at which point it gets worse.
So there’s little doubt in my mind this is a Shinobi bug, although I’d love to be proven wrong. This is a serious issue, and even if this is a bug I would not have time to wait for a bugfix. If you all have any idea what could be wrong, could you please share a workaround for this as soon as possible? Thank you.