05. Sigma

The sigma BlackBox is used to visualise a data graph; represented by interconnected nodes and edges, with the ability to drag the nodes around the space. It utilises the Sigma library.

 
You can move the nodes around, and their positions will be saved.

Parameters

The parameters are as follows:

SigmaChart ( NodeIDField ; NodeLabelField ; NodeXField ; NodeYField ; NodeSizeField ; ShowLabelsSize ; NodeColourField ; NodeClickScript ; EdgeIDField ; EdgeNode1Field ; EdgeNode2Field ; EdgeLabelField )
Parameter
Description
NodeIDField
A field containing a unique ID for your node records
Eg, "bb_data_schedules::id"
NodeLabelField
A field containing a label to display for your node records
Eg, "bb_data_schedules::description"
NodeXField
A field containing an x-coordinate for your node records
Eg, "bb_data_schedules::sigma_x"
NodeYField
A field containing a y-coordinate for your node records
Eg, "bb_data_schedules::sigma_y"
NodeSizeField
A field containing a size for your node records
Eg, "bb_data_schedules::sigma_size"
ShowLabelsSize
A number indicating the size of a node before the label is shown
Eg, "3"
NodeColourField
A field containing the colour for your node records
Eg, "bb_data_schedules::id"
NodeClickScript
A FileMaker script to be run when clicking a node
Eg, "bb_data_schedules::id"
EdgeIDField
A field containing a unique ID for your edge records
“g, "bb_data_links::id"
EdgeNode1Field
A field containing a the node ID that an edge is connected from
Eg, "bb_data_links::id_source"
EdgeNode2Field
A field containing a the node ID that an edge is connected to
Eg, "bb_data_links::id_target"
EdgeLabelField
A field containing a label to display for your edge records
Eg, "bb_data_links::type"

Example

SigmaChart
  "bb_data_schedules::id"
  "bb_data_schedules::description"
  "bb_data_schedules::sigma_x"
  "bb_data_schedules::sigma_y"
  "bb_data_schedules::sigma_size"
  3
  "bb_data_schedules::bar_color"
  "ClickNode"
  "bb_data_links::id"
  "bb_data_links::id_source"
  "bb_data_links::id_target"
  "bb_data_links::type" 


The script you pass through as the NodeClickScript parameter will receive the Node ID (per the NodeIDField parameter) as the script parameter.

Relationship

The box records included on the board will be constrained by the relationship to the table occurrence of your parameter fields. Multi-line keys can be used, but only on the left-hand side of the relationship. In other words, you can use multi-line keys only if they’re on the table that your current context is based on.



Style Customisations

You can customise the CSS of the chart by using Reactor Core to edit the following HTML document:

You will need to recompile the BlackBox to apply any changes you make.