You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@echarts.apache.org by "RahulVishK (via GitHub)" <gi...@apache.org> on 2023/06/01 11:47:55 UTC

[GitHub] [echarts] RahulVishK commented on issue #18685: Data Grouping according to Zoom in Candle Stick Chart

RahulVishK commented on issue #18685:
URL: https://github.com/apache/echarts/issues/18685#issuecomment-1571901638

   In ECharts, we know that time granularity is available for the 'time' axis type, we require a feature where it is possible to aggregate the data where it does the Time Grouping and keeps the data points to optimal number of points so that the number of points plotted on chart are always within a certain threshold limit no matter at what granular level the chart is plotting the data.
    
   For example, if we consider for a transactional data of 10 years and let say for each day on an average let's assume there are 100 records, then it would be resulting in a total of 100 * 365 * 10 = 365000 data points.
    
   So even if chart manages to render all the data points on the chart after some time say about 10 secs or more time later the data plotted on the chart is all overlapping and not so intuitive and user can’t analyse anything much from that unless he zooms in and reduces the time range.
    
   So chart is expected to plot 365000 data points which is what EChart is doing but it would be impacting the chart performance as the data points are lot many and performance keeps degrading as the points keep growing if we increase the time period range.
   To address this, we need some kind of Time Period Grouping where the data is getting aggregated and the number of points actually rendering on a chart will dramatically reduce based on the threshold limit and the chart performance will be better at all times no matter whatever time range we are looking the data for.
    
   For instance, if we set a threshold such as "only 500 data points or below should be plotted on the chart at any given point in time and  we should be able to configure if the data can be aggregated or we can consider taking minimum, maximum, low, or high, avg etc. Additionally, when zooming in or out, in a similar way time grouping should kick in and the new dataset considering the threshold limit would be fetched and feeded to the chart.
    
   Please go through the section Dynamic data item grouping here to get a better understanding of what I am talking [https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#dynamic-data-item-grouping](click here)
    
   Please refer to the sample here which uses Time Grouping and the chart perceived performance from user standpoint is better even though it’s rendering for larger time periods. [https://www.amcharts.com/demos/candlestick-chart/](click here)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@echarts.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@echarts.apache.org
For additional commands, e-mail: commits-help@echarts.apache.org