Pre loader

How to improve performance for 3D chart SurfaceMeshRenderableSeries3D

Welcome to the SciChart Forums!

  • Please read our Question Asking Guidelines for how to format a good question
  • Some reputation is required to post answers. Get up-voted to avoid the spam filter!
  • We welcome community answers and upvotes. Every Q&A improves SciChart for everyone

WPF Forums | JavaScript Forums | Android Forums | iOS Forums

0
0

Hello

I am trying to introduce 3D chart to my application and render SurfaceMeshRenderableSeries3D.
The thing is that my dataset can get quite big, for UniformGridDataSeries3D yValues it can be dimension of
65 536 x 100. Because of WebGL size limitation I use data tilling and render multiple series that connect to each other. Similar how it is done in docs example for heat maps https://www.scichart.com/documentation/js/current/webframe.html#The-Uniform-Heatmap-Chart-Type.html

The chart renders, but when zooming/moving the performance is pretty poor. FPS drops down to 8-10 making it hard to work with.
This is my current series params:

      const surfaceMeshSeries = new SurfaceMeshRenderableSeries3D(wasmContext!, {
        dataSeries: heatMapDataSeries,
        meshColorPalette: colorMap,
        minimum: min,
        maximum: max,
        cellHardnessFactor: 0,
        shininess: 0,
        lightingFactor: 0,
        highlight: 0,
        strokeThickness: 2.0,
        contourInterval: 2,
        contourOffset: 0,
        contourStrokeThickness: 2,
        drawSkirt: false,
        drawMeshAs: EDrawMeshAs.SOLID_MESH,
      });

Is there any option that might help my achieve better performance? It would be fine to disable as much as needed just to make it more optimized for large dataset.

I would really appreciate any help with that

Version
4.0.833
  • You must to post comments
0
0

Hi Cezary,

65 536 x 100 is 6.5 million vertices. That’s quite a lot but should be within the bounds of what SciChart.js 3D can handle. I assume you’ve tiled this as around 10 surface meshes, correct?

The first step to diagnosing performance issues would be to profile the code using a tool such as Firefox developer edition: (see https://www.scichart.com/blog/performance-optimisation-of-javascript-applications-charts which shows how to find bottlenecks).

We have extensive in-house tools to analyze performance of the chart as well (something we are going to make public in future).

Can you — share with us an npm project that highlights the performance issue you’re seeing, and we can analyze it here? We haven’t fully optimised the 3D charts and there may be some areas we can see significant improvement, but we have to have code in front of us to do that.

If you can create an npm project and either share it here (github link, dropbox) OR, submit a support ticket with the details, that would be very helpful

Best regards,
Andrew

  • You must to post comments
0
0

Hi Adrew,

Thank you for the answer. I’ve already created a support ticket (#45650) with more details about my specific case.

Best regards
Cezary

  • Andrew Burnett-Thompson
    OK fantastic, the team are aware. Thanks!
  • Andrew Burnett-Thompson
    Update: Fantastic, we can reproduce now, we’re working on both tiling and performance improvements to 3D Charts in SciChart.js v4.1!
  • You must to post comments
Showing 2 results
Your Answer

Please first to submit.