Skip to content

Row filtering in all nodes that operate on tables #2982

@Keavon

Description

@Keavon

Nodes currently operate on entire tables, usually mapping (or sometimes reducing) all rows (or in a few cases, using only the first row and ignoring the rest). The next step is allowing nodes to encode which specific rows to filter, creating a view into a part of a table (or a view into the full table). One row, a range of rows, every n rows from a start to an end index, or really any pattern like a prime number sequence could be used to filter rows. This can be achieved using a field which returns true or false with the filter result for each row. It can filter based on row index/id or any other attribute (column) data.

The tooling will need to be updated to visualize and allow manipulation of ranges of elements. Tools were previously designed to operate on a single element but now we use multiple elements as the standard data type in the graph so the tools need to support the new behavior. The Select tool should be updated to visualize a bounding box around all elements in the selected layer's current table data, but then double-clicking one element lets you enter a selection of just that element (and Shift clicking others can extend that selection), then that sub-selection can be used as a filter for a new Transform node that gets created upon transforming the sub-selection within the layer. A similar idea applies to the Path tool, which becomes #1822.

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrapheneInvolves the node graph system/engine used by Graphite

    Projects

    Status

    Short-Term

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions