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

Graph Optimization #111

Open
bloodywine opened this issue Jan 1, 2019 · 2 comments
Open

Graph Optimization #111

bloodywine opened this issue Jan 1, 2019 · 2 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed maintenance An issue where the change won't have a visible effect (resolving tech debt etc.)

Comments

@bloodywine
Copy link
Collaborator

As the title states, optimize the graph to decrease load times and improve performance.

A post has been made here and awaiting responses: https://groups.google.com/forum/#!topic/d3-js/gzPTH6MgR_Q

I am working on rearranging the "relationships" section of the JSON in order to see if this has any improvement on frame rates and performance.

@bloodywine bloodywine added the bug Something isn't working label Jan 1, 2019
@bloodywine bloodywine added help wanted Extra attention is needed enhancement New feature or request maintenance An issue where the change won't have a visible effect (resolving tech debt etc.) and removed bug Something isn't working labels Jan 1, 2019
@BurkusCat
Copy link
Owner

I've not done a huge amount of research into this option, but moving from an SVG graph to using canvas may offer a boost (https://medium.freecodecamp.org/d3-and-canvas-in-3-steps-8505c8b27444)

There is limit to performance with D3 and SVGs. However, this graph doesn't have that many nodes. The operator SVGs on their own without relationships are smooth. The straight and curved relationships are also .svgs and the more of those, the more performance seems to degrade.

Potentially doing something inefficient with those? This is what I think so far.

@bloodywine
Copy link
Collaborator Author

I think canvas might offer a good boost in performance as well. I have not done much research on this either, but what I know if that it only slows down when the graph is trying to adjust the SVGs around on first load.

This makes me think if we were to optimize the relationships JSON, the SVGs wouldn't move around and collide as much. Ergo, reducing frame drops. But again, its all theory at this point. I'll start with the canvas in my local environment and see if it offers any kind of reasonable boost in performance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed maintenance An issue where the change won't have a visible effect (resolving tech debt etc.)
Projects
None yet
Development

No branches or pull requests

2 participants