Abstract
Optional
_schemaPrivate
extentsProtected
plotAbstract
promiseAbstract
readyAbstract
root_Optional
tileAbstract
extentThe highest known point that deepscatter has seen so far. This is used to adjust opacity size.
Attempts to build an Arrow table from all record batches. If some batches have different transformations applied, this will error
A list of ids to get, keyed to the value to set them to.
The name of the new field to create
The column in the dataset to match them against.
Given an ix, apply a transformation to the point at that index and return the transformed point (not just the transformation, the whole point) As a side-effect, this applies the transformaation to all other points in the same tile.
The name of the transformation to apply
The index of the point to transform
Abstract
download_Map a function against all tiles. It is often useful simply to invoke Dataset.map(d => d) to get a list of all tiles in the dataset at any moment.
A list of the results of the function in an order determined by 'after.'
A function to apply to each tile.
Whether to perform the function in bottom-up order
This allows creation of a new column in your chart.
A few thngs to be aware of: the point function may be run millions of times. For best performance, you should not wrap complicated logic in this: instead, generate any data structures outside the function.
name: the name to identify the new column in the data. pointFunction: a function that runs on a single row of data. It accepts a single argument, the data point to be transformed: technically this is a StructRowProxy on the underlying Arrow frame, but for most purposes you can treat it as a dict. The point is read-only--you cannot change attributes.
For example: suppose you have a ['lat', 'long'] column in your data and want to create a new set of geo coordinates for your data. You can run the following. { const scale = d3.geoMollweide().extent([-20, -20, 20, 20]) scatterplot.register_transformation('mollweide_x', datum => { return scale([datum.long, datum.lat])[0] }) scatterplot.register_transformation('mollweide_y', datum => { return scale([datum.long, datum.lat])[1] }) }
Note some constraints: the scale is created outside the functions, to avoid the overhead of instantiating it every time; and the x and y coordinates are created separately with separate function calls, because it's not possible to assign to both x and y simultaneously.
Invoke a function on all tiles in the dataset that have been downloaded. The general architecture here is taken from the d3 quadtree functions. That's why, for example, it doesn't recurse.
The function to invoke on each tile.
Whether to execute the visit in bottom-up order. Default false.
Invoke a function on all tiles in the dataset, downloading those that aren't here yet.. The general architecture here is taken from the d3 quadtree functions. That's why, for example, it doesn't recurse.
The function to invoke on each tile.
Whether to execute the visit in bottom-up order. Default false.
Static
from_Generate an ArrowDataset from a single Arrow table.
Static
from_Generated using TypeDoc
A Dataset manages the production and manipulation of tiles. Each plot has a single dataset; the dataset handles all transformations around data through batchwise operations.