For each Node in the aggregateTo Category, collect the value of the targetProperty from every neighbor of that Node connected by an Edge of the aggregateAlong Relationship into an array. Then, run a mapping function formula on the array and store the resulting value in a property of the Node.
Given one of x, y, or z, find the center of that dimension and align all Nodes to that center on that dimension only.
Sets the positions of Nodes. Optionally animate the position. If tween provided with the LayoutResult, use it. Override the default tweens returned by (for example) line() and circle() by providing TweenLayoutOverrides. If tween is undefined, set all the positions immediately
Compute Betweenness score for each node in the graph
All the Nodes spread on a circle
Compute Closeness score for each node in the graph
Merge input nodes into new or existing collection nodes
Applies a color scale to all nodes by a certain property.
Returns -1 if left < right, 0 if left == right, and 1 if left > right Flips the sign if ascending = false.
Find all Connected Components in the graph
Create nodes from an Array of raw node data
.
The raw node data is supplied as a list of dictionaries.
Then an object with the following properties must be provided:
category
: The category of the nodes to be created.keys
: The keys of the properties to be created.All the Nodes spread on a cube.
Returns all shortest paths from the source to target node.
Useful for forcing the UI to update after updating graph data.
Equally space Nodes on one of the x, y, or z axes while keeping the other two dimensions constant. Optionally bin the Nodes by a property value. Optionally scale the spacing by a "spread" factor (the higher the spread, the farther apart).
Returns a function which, given a Graph, returns all edges of a specific relationship
Ego reveals hierarchal data by arranging nodes in a tree, where a node's depth in the tree is equal to the length of the shortest path to the node. The tree projects linearly in one direction, or radially around the root[s].
Queries Neo4j for nodes connected to the source nodes and then adds them to the graph.
See ExpandNodesOptions for options.
It returns a status code indicating whether there are more results available. See ExpandNodesStatusCode.
For each collection node in the input, uncollect all nodes
Extract creates a new Category and Relationship linked to the input Nodes, based on the input prop options.
Fly the camera to the center of a slice of nodes, optionally with an offset, optionally with a custom duration or tween function
Fly the camera to a position, optionally with an offset, optionally with a custom duration or tween function
Returns the default Node Color of a Category
Returns a Graph which allows mutation of the Graph visualization.
Returns a Generator which resolves to the LegacyLayoutGraph. The Generator emits whenever the window global GraphXR owned GraphObservable object emits. It's useful in Grove to create cells which react to graph data changes.
Returns a THREE.Group in which one can add new THREE objects to the 3d space
Equally space Nodes on the x-axis, y-axis, z=0.
A decorator for the circle, cube, grid, line, and spiral layouts. You can construct your own layout by providing a layout function.
Equally space Nodes on the x-axis, y=0, z=0.
For each Node A in the source category, create an edge to a Node B in the target category, where A.sourceProperty === B.targetProperty
Find all Louvain components in the graph
Returns a Graph useful for in-memory Graph operations
Creates a random NodeId
Creates a Position (x,y,z)
Creates a random Position (x,y,z)
For each Node in the category, or each Edge in the relationship, map the mappedProperties using formula provided in the options. Optionally create a new name for the property.
Combine Nodes or Edges which have equivalent key properties.
Merge nodes from an Array of raw node data
.
The raw node data is supplied as a list of dictionaries.
Then an object with the following properties must be provided:
category
: The category of the nodes to be created.keys
: The keys of the properties to be created.inputs
: Tha JSON Objects to be created.Merge Relationships from an Array of raw node data
.
The raw node data is supplied as a list of dictionaries.
Then an object with the following properties must be provided:
edge
:relationship
: The keys of the properties to be merged.keys
: The keys of the properties to be merged.source
:category
: The category of the nodes to be merged.keys
: The keys of the properties to be merged.target
:category
: The category of the nodes to be merged.keys
: The keys of the properties to be merged.inputs
: Tha JSON Objects to be merged.Execute a Neo4j query. Results appear in the graph workspace
Returns a function which, given a Node, returns true if the Node is in a certain category
Convert an async API event, like 'change', into an Iterator. Useful in Grove to define variables which react to data changes
Convert graph data change into an observable Grove variable.
Compute PageRank for the entire graph
Map the x, y, and/or z dimensions to the range [-2, 2] by applying a linear scale to all or a subset of the domain of a property.
If a dimension is omitted, it is flattened to align with the grid.
Set each node to a random point.
Given one of the x, y, or z dimensions, find the center point of all the Nodes and rotate all Nodes around the axis passing through the center point and lying on the dimension given.
Scale the distance of each node from a computed center by a constant factor.
Enable or disable auto-show image on Nodes.
Set camera rotation, rotation axes visibility, camera speed
Enable or disable rotating of the graph scene
Set the properties which will display as captions for the given category.
Set the property which will affect the size of the nodes in the category.
Set the edge scale
Hide panels and controls if fullscreen is enabled
Sets the axes options. Parametric layout automatically sets these.
An optional function which enables test runners to inject a mock Window object into the API. Most of the time, you won't call this function because the API runtime object defaults to window
.
typically a mock of the Window
Add a constant vector to the position of each node.
Given incomingRelationship, centerCategory, and outgoingRelationship, Shortcut finds all unique paths from node A to node C, traveling first along incomingRelationship, passing through centerCategory, and travelling lastly through outgoingRelationship to arrive at C. Once it finds all unique paths from A to C, Shortcut creates an edge A -> C with properties aggregated from the center nodes.
Written differently, A -R0-> [B] -R1-> C => A -R2-> C where R0 is incomingRelationship, B is centerCategory, R1 is outgoingRelationship, and R2 is the new relationship. [B] means the set of all nodes B which are between A and C.
Returns a promise that resolves after the given amount of milliseconds.
Returns a function which compares two property values.
All the Nodes spread on a spiral
Find all Strongly Connected Components in the graph
Highlight the root Node and all connected Edges and neighboring Nodes up to a specified depth.
Remove the input nodes from their collection nodes
GraphXR must be this version or greater.
See package.json in the root directory of the graph
repository.
Highlight the root Node and all connected Edges and neighboring Nodes up to a specified depth.
Fly the camera to the center of a slice of nodes, optionally with an offset, optionally with a custom duration or tween function
Fly the camera to a position, optionally with an offset, optionally with a custom duration or tween function
Set camera rotation, rotation axes visibility, camera speed
Enable or disable rotating of the graph scene
Returns the default Node Color of a Category
Set the properties which will display as captions for the given category.
Set the property which will affect the size of the nodes in the category.
Compute Betweenness score for each node in the graph
Compute Closeness score for each node in the graph
Compute PageRank for the entire graph
Find all Connected Components in the graph
Find all Louvain components in the graph
Find all Strongly Connected Components in the graph
Convert an async API event, like 'change', into an Iterator. Useful in Grove to define variables which react to data changes
Convert graph data change into an observable Grove variable.
Returns a function which, given a Graph, returns all edges of a specific relationship
Returns a function which, given a Node, returns true if the Node is in a certain category
Returns a Graph which allows mutation of the Graph visualization.
Returns a Graph useful for in-memory Graph operations
Returns a Generator which resolves to the LegacyLayoutGraph. The Generator emits whenever the window global GraphXR owned GraphObservable object emits. It's useful in Grove to create cells which react to graph data changes.
Given one of x, y, or z, find the center of that dimension and align all Nodes to that center on that dimension only.
Sets the positions of Nodes. Optionally animate the position. If tween provided with the LayoutResult, use it. Override the default tweens returned by (for example) line() and circle() by providing TweenLayoutOverrides. If tween is undefined, set all the positions immediately
All the Nodes spread on a circle
All the Nodes spread on a cube.
Equally space Nodes on one of the x, y, or z axes while keeping the other two dimensions constant. Optionally bin the Nodes by a property value. Optionally scale the spacing by a "spread" factor (the higher the spread, the farther apart).
Ego reveals hierarchal data by arranging nodes in a tree, where a node's depth in the tree is equal to the length of the shortest path to the node. The tree projects linearly in one direction, or radially around the root[s].
Equally space Nodes on the x-axis, y-axis, z=0.
A decorator for the circle, cube, grid, line, and spiral layouts. You can construct your own layout by providing a layout function.
Equally space Nodes on the x-axis, y=0, z=0.
Map the x, y, and/or z dimensions to the range [-2, 2] by applying a linear scale to all or a subset of the domain of a property.
If a dimension is omitted, it is flattened to align with the grid.
Set each node to a random point.
Given one of the x, y, or z dimensions, find the center point of all the Nodes and rotate all Nodes around the axis passing through the center point and lying on the dimension given.
Scale the distance of each node from a computed center by a constant factor.
Sets the axes options. Parametric layout automatically sets these.
Add a constant vector to the position of each node.
All the Nodes spread on a spiral
Applies a color scale to all nodes by a certain property.
Queries Neo4j for nodes connected to the source nodes and then adds them to the graph.
See ExpandNodesOptions for options.
It returns a status code indicating whether there are more results available. See ExpandNodesStatusCode.
Execute a Neo4j query. Results appear in the graph workspace
Converts a Neo4j Graph response to a Graph, which we can merge into the graph workspace.
Creates a random NodeId
Create nodes from an Array of raw node data
.
The raw node data is supplied as a list of dictionaries.
Then an object with the following properties must be provided:
category
: The category of the nodes to be created.keys
: The keys of the properties to be created.Useful for forcing the UI to update after updating graph data.
Merge nodes from an Array of raw node data
.
The raw node data is supplied as a list of dictionaries.
Then an object with the following properties must be provided:
category
: The category of the nodes to be created.keys
: The keys of the properties to be created.inputs
: Tha JSON Objects to be created.Merge Relationships from an Array of raw node data
.
The raw node data is supplied as a list of dictionaries.
Then an object with the following properties must be provided:
edge
:relationship
: The keys of the properties to be merged.keys
: The keys of the properties to be merged.source
:category
: The category of the nodes to be merged.keys
: The keys of the properties to be merged.target
:category
: The category of the nodes to be merged.keys
: The keys of the properties to be merged.inputs
: Tha JSON Objects to be merged.The only purpose of this function is to cast Object.keys to PropertyKey[]
Returns all shortest paths from the source to target node.
Enable or disable auto-show image on Nodes.
Set the edge scale
Returns -1 if left < right, 0 if left == right, and 1 if left > right Flips the sign if ascending = false.
Returns a THREE.Group in which one can add new THREE objects to the 3d space
An optional function which enables test runners to inject a mock Window object into the API. Most of the time, you won't call this function because the API runtime object defaults to window
.
typically a mock of the Window
Returns a function which compares two property values.
Creates a Position (x,y,z)
Creates a random Position (x,y,z)
For each Node in the aggregateTo Category, collect the value of the targetProperty from every neighbor of that Node connected by an Edge of the aggregateAlong Relationship into an array. Then, run a mapping function formula on the array and store the resulting value in a property of the Node.
Merge input nodes into new or existing collection nodes
For each collection node in the input, uncollect all nodes
Extract creates a new Category and Relationship linked to the input Nodes, based on the input prop options.
For each Node A in the source category, create an edge to a Node B in the target category, where A.sourceProperty === B.targetProperty
For each Node in the category, or each Edge in the relationship, map the mappedProperties using formula provided in the options. Optionally create a new name for the property.
Combine Nodes or Edges which have equivalent key properties.
Given incomingRelationship, centerCategory, and outgoingRelationship, Shortcut finds all unique paths from node A to node C, traveling first along incomingRelationship, passing through centerCategory, and travelling lastly through outgoingRelationship to arrive at C. Once it finds all unique paths from A to C, Shortcut creates an edge A -> C with properties aggregated from the center nodes.
Written differently, A -R0-> [B] -R1-> C => A -R2-> C where R0 is incomingRelationship, B is centerCategory, R1 is outgoingRelationship, and R2 is the new relationship. [B] means the set of all nodes B which are between A and C.
Remove the input nodes from their collection nodes
Returns a promise that resolves after the given amount of milliseconds.
Hide panels and controls if fullscreen is enabled
Generated using TypeDoc
Perform a runtime check of the minimum required GraphXR and API version. If minimum requirements are met, return the API. Otherwise, throw an error.
a Promise that resolves to the API
0.0.1