3 ms·
k is right that d3 has some helper functions for drawing on canvas, so most of the methods here will work: https://wattenberger.com/blog/d3#drawing-svg-shapes
by wattenberger 7y ago
k is right that d3 has some helper functions for drawing on canvas, so most of the methods here will work:
https://wattenberger.com/blog/d3#drawing-svg-shapes https://wattenberger.com/blog/d3#drawing-svg-shapes
Canvas is way more performant than SVG for a lot of shapes, since they don't have the overhead of a DOM node.
But in general, you want to work outside of the browser if you have that much data. What I'll usually do is either:
- write a python script to process my data and use d3 for the final visualization, or
- have an API that returns a sliced portion of the data and create an interface that will request different sliced datasets when interacting with filters, controls, etc.
This election dashboard is a good example:
https://currents.parsely.com/election https://currents.parsely.com/election
it hits two endpoints, which return basically the maximum amount of data you can expect a browser to handle (the massive dataset is processed elsewhere). You could create an endpoint to return different views when you click on, eg, a different date, although then the user would have to wait for the data to load.