Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Low speed Chart #278

Closed
m2faridi opened this issue Feb 6, 2021 · 11 comments
Closed

Low speed Chart #278

m2faridi opened this issue Feb 6, 2021 · 11 comments

Comments

@m2faridi
Copy link

m2faridi commented Feb 6, 2021

Your chart performs extremely poorly on 500 candlesticks
please see this video

https://vimeo.com/user108517719/review/509174535/faff05e7f8

My phone is Samsung S10 plus

@m2faridi
Copy link
Author

m2faridi commented Feb 6, 2021

this code for sync all charts

double zoomPosation=0;
  double zoomFactor=0.15;
  void chartZoomSync(ZoomPanArgs zoomingArgs ,int index){
    if (zoomingArgs.axis.name != null && int.parse(zoomingArgs.axis.name) == index) {
      if(zoomingArgs.currentZoomPosition!=zoomPosation || zoomingArgs.currentZoomPosition!=zoomingArgs.currentZoomFactor)
      {
        zoomPosation = zoomingArgs.currentZoomPosition;
        zoomFactor = zoomingArgs.currentZoomFactor;
        setState(() {

        });
      }
    }
  }

onZooming: (zoomingArgs) { chartZoomSync(zoomingArgs,index); }

@m2faridi
Copy link
Author

m2faridi commented Feb 6, 2021

I would love to use your library in the program I am working on, but unfortunately the speed of your library is not good at the moment.
I am currently using the mpFlutterChart Library
Please fix speed issues. Thank you
link app

https://play.google.com/store/apps/details?id=com.m3.Trendo

@Dharanipalani
Copy link
Contributor

Hi @m2faridi,

Thanks for the interest in our Flutter charts. We have analyzed your scenario and the problem is due to calling the setState in onZooming event in the sample level. We have handled this in the source level, the onZooming event will fires automatically while zooming and the assigned zoomFactor and zoomPosition values will be updated, so no need to call the setState to update them. We have attached the sample and screen record for your reference please make use of it.

Sample: https://www.syncfusion.com/downloads/support/directtrac/314111/ze/I314111-candle_performance1745787120

screenshot for updating zoomFactor and zoomPosition values,

image

Screen record: https://www.syncfusion.com/downloads/support/directtrac/314111/ze/I314111-candle_record-1063564876

Please revert us if you need any further assistance.

Thanks,
Dharanitharan. P

@m2faridi
Copy link
Author

m2faridi commented Feb 9, 2021

Screen record: https://www.syncfusion.com/downloads/support/directtrac/314111/ze/I314111-candle_record-1063564876

I do not have access to this page
Access Denied
You don’t have permission to access this file. The reason may be:
The incident associated with this file is not tied to the account you used to log in. To Logout use this link.
Your enterprise portal admin has not allowed you to access other portal users’ incidents. Ask admin to change the support visibility in their Syncfusion profile.
If you feel this information is wrong and you need to download this file, please contact us.

@m2faridi
Copy link
Author

m2faridi commented Feb 9, 2021

Performance is still very poor

@Dharanipalani
Copy link
Contributor

Hi @m2faridi,

We regret the inconvenience that caused. Now, we attached the sample and screen record below please make use of it and revert us if you have further concerns.

Sample: I314111-candle_performance.zip

Screen-record: I314111-candle_record.zip

Thanks,
Dharanitharan. P

@m2faridi
Copy link
Author

I replaced your codes
But it was not high speed
For example, run the same code with 5000 candlesticks and it will slow down

@m2faridi
Copy link
Author

Please check the speed of this chart
https://github.com/SunPointed/MPFlutterChart

@Dharanipalani
Copy link
Contributor

Dharanipalani commented Feb 11, 2021

Hi @m2faridi,

When we use more points, the performance lag occurs while zooming. However, we are trying to improve the performance for the candle type series which will be included for volume 1 main release which is expected to be rolled out at the end of March 2021. We appreciate your patience till then.

Regards,
Dharanitharan. P

@Dharanipalani
Copy link
Contributor

Hi @m2faridi,

Thanks for being patience. We are glad to inform you that the reported performance issue in the candle series is fixed and here we shared the performance metrics for your reference. We are continuously working on performance improvement and it will be in our upcoming releases.

Performance metrics:

Before Improvement After improvement
Candle Candle
1.5k - initial zoom - 3000 ms (3s) further zoom - 1500ms (1.5s) 1.5k - initial zoom - 800ms (0.8s) further zoom - 100ms (0.1s)
5k - initial zoom - 15000 ms(15s) - further zoom - 10000 ms (10s) 5k - initial zoom - 8000 ms (8s) further zoom - 2000 ms (2s)
   
Spline Spline
1.5k - initial zoom - 130ms further zoom - 70ms 1.5k - initial zoom - 70ms further zoom - 20ms
5k - initial zoom - 400ms further zoom - 200ms 5k - initial zoom - 210ms further zoom - 60ms

To resolve the performance issue, you can upgrade our charts from the below link.
https://pub.dev/packages/syncfusion_flutter_charts/versions/19.1.54+1

Thanks,
Dharanitharan. P

@m2faridi
Copy link
Author

m2faridi commented Apr 8, 2021

Improved, but we still have lag. Optimize when zooming and moving

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants