You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using a plotBy, the chart will remove the loading spinner and fire its load finished event as soon as the 1st series data arrives.
This is because for a regular series/chart, the figure object from the server includes the series to plot so we can populate seriesToProcess.
For a multi-series (plotBy), the figure from the server does not include any of the actual series. So the seriesToProcess set is always empty if we have a plotBy.
I think instead of populating seriesToProcess in initAllSeries, it should be part of addSeries. Then also remove from that set if the series is inactive in initAllSeries. A plotBy sends series added events which trigger addSeries. Then we would need to not fire updated events until the load is finished. Right now we fire updated events regardless of if we're waiting on other series.
Steps to reproduce
Create a chart with a plotBy in Python. This example takes advantage of downsampling being slow when there are nulls to show the series loading in at different times.
Loading spinner goes away when both series have loaded.
Actual results
One series displays, then 1-2 seconds later, the other series displays.
Additional details and attachments
This was discovered because I was using the load finished event to detect when the data has arrived for the docs snapshot tool. This doesn't work with plotBy and recently an unresolved promise started appearing because of this case.
The text was updated successfully, but these errors were encountered:
Description
When using a plotBy, the chart will remove the loading spinner and fire its load finished event as soon as the 1st series data arrives.
This is because for a regular series/chart, the figure object from the server includes the series to plot so we can populate
seriesToProcess
.For a multi-series (plotBy), the figure from the server does not include any of the actual series. So the
seriesToProcess
set is always empty if we have aplotBy
.I think instead of populating
seriesToProcess
ininitAllSeries
, it should be part ofaddSeries
. Then also remove from that set if the series is inactive ininitAllSeries
. AplotBy
sends series added events which triggeraddSeries
. Then we would need to not fire updated events until the load is finished. Right now we fire updated events regardless of if we're waiting on other series.Steps to reproduce
Expected results
Loading spinner goes away when both series have loaded.
Actual results
One series displays, then 1-2 seconds later, the other series displays.
Additional details and attachments
This was discovered because I was using the load finished event to detect when the data has arrived for the docs snapshot tool. This doesn't work with plotBy and recently an unresolved promise started appearing because of this case.
The text was updated successfully, but these errors were encountered: