User Manual

Arcade Analytics

User Manual

Version 1.0 (Feb 15, 2018)

Main Concepts

Arcade Analytics is a graph visualization tool that enables users to have more control over their data. Arcade sits on top of the user’s database and allows the user to query data and show it in a graph. Arcade currently integrates with all major graph and relational databases. Our connectors allow users to visually see relationships and connections within their datasets in our dashboard. Within Arcade’s dashboard, users have a variety of customization options to assist the user in finding meaningful connections and relationships. Users can change the size, color, background image, and layout of nodes, or they can filter the visualization to only see certain sections of their data. Once users have found a meaningful connection, the graph can be exported so the user can share their analysis with others.

Yes No

Demo

To access the Arcade Demo click on this link. The Demo allows users to test all of the visualization tools Arcade has to offer in a limited and pre-determined environment. Users can access multiple databases and use Arcade to see this data visually. The Demo is read only and limited to 300 nodes per query and 5,000 nodes total. 

Yes No

Login

Upon subscription to Arcade Analytics, users will receive an email with information on how to access their account. A welcome email will include your new username and temporary password. Make sure to change your account password through the account settings tab once you login.

If you need login assistance please contact us at info@arcadeanalytics.com

 

Yes No

How to integrate with your database

Users can configure connections to their database in the Arcade Dashboard selecting the Datasource menu.

Once selected the menu, the list of configured data-sources is showed:

Click on the create a new Data Source button to create a new entry

  • name: give the data source a name of your choice
  • description(optional): a meaningful description
  • type: select the type of database
  • if the RDBMS type is selected, select the database
  • server: server name or IP address
  • port: the ports (e.g.: 5432 for Postgres)
  • database: the name of the database
  • username and password: credentials to access your DB
  • Use ssh tunnel: if the database isn’t exposed on the internet, select this flag
  • gateway: IP address or the name of the ssh gateway
  • ssh user: user name to be used  to create the tunnel (default: player)
  • ssh port: usually 22

To enable connection through ssh tunnelling:

  • Download our public key
  • whitelist on your firewall our IP: 78.46.48.166
  • add the key to the authorized_keys file for the given ssh user configured, so add it to /home/<sshUser>/.ssh/authorized_keys
Yes No

Neo4j

Neo4j is supported only through bolt binary protocol, usually on port 7687.

An example of the configuration:

  • server: server name or IP address, e.g. 75.40.50.60 or mydatabase.mydomain.com
  • port: 7687
  • database: NONE (neo4j exposes a single database at a time)
  • username and password: credentials to access neo4j server
  • Use ssh tunnel: if the database isn’t exposed on the internet, select this flag
  • gateway: IP address or the name of the ssh gateway
  • ssh user: username to be used  to create the tunnel (default: player)
  • ssh port: usually 22

 

 

Yes No

OrientDB

The OrientDB connector supports the 2.2.x series over the binary protocol, usually on port 2424.

A typical connection configuration is:

  • server: server name or IP address, e.g. orientdb.mydomain.com
  • port: 2424
  • database: mydatabase
  • username and password: myname/mypassword

 

Yes No

RDBMS Connector

Arcade Analytics allows you to connect to relational databases through a specific RDBMS connector, which allows you to perform graph analyses over your Relational Database.

You can integrate Arcade with all major relational databases: at the moment it is compatible and fully-tested with Oracle, Microsoft SQLServer, MySQL, PostgreSQL and HyperSQL*.

Connections and data within your RDBMS are treated as a graph through a model mapping between the source data model, the Entity-Relationship Model, and the target data model, the Graph Model.

Once a coherent and effective model mapping is performed, you can query your source dataset and play with it as if it was a graph:

  • each record is transformed in a correspondent vertex.
  • each connection between two records, inferred through a relationship between two tables and computed through a join operation, generates an edge

 

 

Model Mapping

The ER model is built starting from the source DB schema: each table, known also as Entity, and each Relationship in the DB is inferred from these metadata. Because of this, if you didn’t define constraints, such as foreign keys between the tables on which you usually perform join operations, you will lose this kind of information during the querying process. If foreign keys are missing, you will not have any edges in your final Graph Model, and you will not able to traverse any relationship.

This automated mapping strategy adopts a basic approach: the source DB schema is directly translated as follows:

  1. each Entity in the source DB is converted into a Vertex Type.
  2. each Relationship between two Entities in the source DB is converted into an Edge Type (remember, relationships in your source DB schema are represented by the foreign keys).

All the records of each table are handled according to the following schemas-mapping: each pair of records on which it’s possible to perform a join operation will correspond to a pair of vertices connected by an edge of a specific Edge Type.

Example: 1-N Relationship

The Film and Language source tables are translated in two correspondent Vertex Types; the properties contained in the Film and Language Vertex Types directly come from the columns belonging to the two source tables.

The logical relationship between the two tables generates the HasLanguage Edge Type. 

 

 

Source data and relationships will be retrieved and visualised as shown below. 

 

Example: N-N Relationship

In RDBMSs N-N Relationships are expressed through join tables. In the sample schema below you can see how the N-N relationship between actors and movies is modelled through the join table Film_Actor.

 

As you can see, the central join table is translated in a specific Vertex Type allowing you to traverse the N-N relationship between actors and movies.

Then, starting from the following tables:

 

 

We will obtain the following graph:

 

 

Now we can say that traversing N-N relationships is equivalent to traverse two 1-N relationships, like in the relational world:

  • 1-N relationship between Film and Film_Actor
  • 1-N relationship between Film_Actor and Film

Aggregation

The Graph Model is more expressive than the ER Model. In the Graph Model N-N Relationship don’t need redundant structures like the join tables used in the SQL world, instead you just have edges. For this reason Arcade offers the capability to aggregate some redundant information in order to obtain a simpler and more efficient model.

This makes it possible to choose a specific mapping strategy that performs aggregation on join tables of dimension equals to 2, that is to say those tables which map two tables together by referencing the primary keys of each data table through a foreign key. The join tables of dimension greater than 2 are ignored by the aggregation algorithm. This process allows each candidate join table to be converted into an appropriate edge, and each field not involved in any relationship with other tables (hence not involved in any foreign key in the source DB schema) is aggregated in the properties of the new built edge.

Referring to the scenario in the last example, even if the new DB does not reflect the original DB schema, the aggregation leads to a great saving in terms of resources and avoids a substantial overhead. The OrientDB schema after the aggregation process comes out simpler, hence also the analysis is easier.

Let’s examine the same N-N relationship reported in the previous example. Here the join table is not translated into a Vertex Type, but rather into an Edge Type. The last_update column, the only one not involved in any relationship, becomes a field in the resulting “aggregator edge”. 

 

 

By starting from the previous scenario, but this time using the aggregate function, we will get cleaner and simpler results. 

 

 

This time we will obtain a less complex graph: 

 

 

A simpler graph means better performance: to navigate the relationship between films and actors we will not need two jumps, but just one.

How to aggregate aggregate join tables of your source database

In order to aggregate all the join tables in your source database you simply have to flag the specific option in the Datasource options. 

 

 

In this way all the widgets connected to this specific Datasource will come out with an aggregated model that will be reflected during the analysis.

Let’s focus on the N-N relationship between actors and movies: starting from a specific actor we will be able to expand all the related movies by traversing just one relationship, called with the same name of the original aggregated join table, in this case film_actor

 

Arcade Features and source RDBMS meaning

In Arcade you can enjoy all the features offered for graph databases while using a relational database.

Below is a list of some useful features for you to review:

You have three main ways to interact with your source dataset:

 

 

When you load one or more items a correspondent query is performed against the source relational database according to the external keys mapping. This allows eventual indices to be used which makes retrieving records and building vertices very fast.

 

 

Just scan queries are allowed. Let’s suppose we want to fetch the first 100 items from the actor table, then we have to type:

select * from actor limit 100

You can add also some conditions by using the where statement, but don’t get crazy with join operations, this kind of queries are not allowed and it is much simpler to use the traverse tool to traverse your relationships.

select * from actor where actor.first_name=Ben

 

 

In this example we want to get the language of a specific movie. Selecting the outgoing has_language edge type on the left we will expand the relationship. This operation corresponds to a join operation between the film and the language tables.

Here is the result of the traverse, we will obtain a new language node and an edge connecting the two vertices.

 

 

We can fetch some other movies having English as language simply by selecting the new vertex and clicking the ingoing has_language edge.

Below is the result:

 

 

From this point you can continue to explore your data and customize it to your needs.

*All company names and logos used on this website are for identification purposes only and do not imply endorsement.

Yes No

Arcade Dashboard

The dashboard shows all of the datasets the user is currently visualising. Each analysis over the dataset is shown as a widget that can be edited, sized, moved around, and deleted. The user can add as many widgets as their subscription plan allows.

 

Users also have access to a text widget which can be used to make notes about specific datasets.

 

Yes No

Media Library

Users can access their media library through the Arcade Dashboard. Users can choose from a number of pre-uploaded images for node customisation, or they can upload an image using the media library.

 

 

Yes No

Account Settings

Each account will have an admin user who will have control over the account settings. From account settings on the dashboard, the admin can manage their personal information and login details.

 

 

Manage Users 

From the dashboard, admin users can manage all other users from the administration tab. From here the admin can view or edit user details. Admin users can also create or delete user accounts from this page. The number of users allowed depends on the subscription plan associated with the account.

 

Yes No

Widgets

In Arcade a Widget is the core component of interaction, allowing users to read and directly manipulate data from the datasource connected with the Widget itself.

There are different kinds of Widgets, each of them facilitates a specific interaction and analysis over your data:

  • Graph Widget
  • Table Widget
  • Text Widget

You can use a Widget in two different ways:

  • Read-Only mode: you can inspect each Widget inside the dashboard together with the other defined widgets
  • Edit mode: you can open a specific Widget in order to evolve your analysis and save the progress
Yes No

Graph Widget

The user can visualize their data through the Graph Widget interface. The data will be shown on the right and the side toolbar is shown on the left. The side toolbar can be expanded or collapsed for convenience.

 


In the data panel you can find three tabs:

  • The Graph tab allows you to inspect data in form of graph.

 

  • The Table tab offers a tabular view of your data.

  • The Datasource tab reports info about the datasource the widget is connected with, and allows you to inspect or edit the datasource (if you got the right permissions), try the connection and call a new full text indexing.

All the available features in the Table Widget are reachable in the side toolbar and in the top toolbar.

Yes No

Side Toolbar

To act on the data composing your current analysis you can use the side toolbar on the left.
Each menu item corresponds to a specific feature allowing users to edit the current dataset, e.g. you can fetch or remove data, filter it according some parameters, select or hide some elements and so on.

 

You can change perspective by expanding or collapsing the toolbar through the last dedicated menu item.

Yes No

Graph Element

The Graph Element menu allows the user to inspect the content of the selected element and act on the class level rendering: all the chosen settings for a node of a class will be applied to all the nodes of that specific class.
You can find three section:

  • Properties
  • Label
  • Shape

Properties

Here all data data contained in the last selected element is displayed as a collection of properties, that is a key-value map where:

  • the key is the property (or field) name
  • the value is the content of the specific property

 

 

If you want to inspect the content of more elements at the same times you could exploit the table view.

 

Label

Users can also edit the label appearance by changing:

  • the field is used as label for all the nodes of the specific class
  • the font
  • the label size
  • the label position
  • the label color

 

 

Shape

Users can also change the elements look by choosing different settings.

For nodes you can customise:

  • the node size, you can adopt
    • a fixed sizing, by setting a static width and height for all the nodes.
    • a linear sizing, by defining a linear dynamic mapping to an node’s data field. Once you chose the field, you just have to state the range by setting both the minimum and the maximum size. In this way the node size will depend on the current value of the specified field.
  • the node color

 

 

  • the background image: you can choose among several images stored in the user’s media library or just leave the node clean. The media library can also be accessed on the menu bar at the top of the screen. Users can use the pre-uploaded images or upload new images to use them as background. 
  • the border color

 

 

For edges you can customise:

  • the edge width, you can adopt
    • a fixed sizing, by setting a static width for all the edges.
    • a linear sizing, by defining a linear dynamic mapping to an edge’s data field. Once you chose the field, you just have to state the range by setting both the minimum and the maximum size. In this way the edge size will depend on the current value of the specified field.
  • the edge color
  • the line style
  • source arrow’s color and shape
  • target arrow’s color and shape

 

 

 

Remember all changes made need to be saved in order for them to be applied and seen on the screen. You can save your changes by clicking on the blue save tab seen at the bottom of the Graph Element tool as seen below.

 

 

Yes No

Traverse

Use the traverse tool to expand all incoming and outgoing connections of one or more selected nodes.
The traverse menu shows all the type of relationships (Edge classes) with a cardinality beside, indicating the number of connections that will be retrieved from your datasource and added to the graph. 

 

 

You can access the traverse menu also from the context menu of a selected node: in this way you expand the desired relationships just for that specific node.

 

 

 

Yes No

Filter

Users can filter the visualised data by stating several filters based on the values of a specific property for a specific class.
This allows the user to see and analyse data focusing on different classes and property values.

The filtered out elements will be opaque in the graph and hidden in the table view. 

 

 

Yes No

Selection

Users can select and deselect all, or some, of the nodes and edges.

 

 

You can select an element according to its content through the top search box as follows:

  • Spaces between words work as AND: a search for nodes with a field containing all the typed keywords will be performed.
    e.g.: “foo bar” –> it looks for fields containing both ‘foo’ AND ‘bar’
  • To look for nodes with a field containing at least a keyword you can use OR between the keywords (type ‘OR’ uppercase).
    e.g.: “foo OR bar” –>  it looks for fields containing ‘foo’ OR ‘bar’
The input value will be searched in all the properties for each element in the graph, then the matching elements will be selected.

 

It is possible to select or unselect the desired elements through some shortcuts:

  • Select All: selects all the elements in the current graph, both nodes and edges.
  • Deselect All: unselects all the elements in the current graph, both nodes and edges.
  • Vertices Only: keeps selected just the nodes among the current selected elements in the graph and unselects all the edges.
  • Edges Only:keeps selected just the edges among the current selected elements in the graph and unselects all the nodes.
  • Hidden: selects all the hidden elements in the current graph, both nodes and edges.
  • Displayed: selects all the displayed elements in the current graph, both nodes and edges.
  • Invert: inverts the current selection, that is to say all the selected elements will be unselected and all the unselected elements will be selected.
  • Orphans: all the isolated nodes without edges will be selected.

In the end, you can exploit a cool feature allowing you to select in a very quick and easy way some portions of graph as follows:

  • Outgoing Vertices Depth level
    Through this command you can select all the Outgoing traversable edges and vertices from a specific depth till another desired depth by using the slider below.

    Selecting for example outgoing vertices with depth from 1 to 3 means selecting all the neighbours of 1st, 2nd and 3th level.
  • Ingoing Vertices Depth level
    Through this command you can select all the Ingoing traversable edges and vertices from a specific depth till another desired depth by using the slider below.

    Selecting for example ingoing vertices with depth from 1 to 3 means selecting all the neighbours of 1st, 2nd and 3th level.
Thus this option has nothing to do with the degree (number of edges) of the current selected node, but rather it allows you to navigate all the reachable neighbours as a tree, and moreover select just the vertices contained in a relevant depth range.

 

Yes No

Table

Users can customise the tabular view through the Table menu item.
You can choose among two different views:

  • Dedicated tab: a whole tab will be reserved for the table view
  • Bottom: you can render the table data below the graph


It’s possible to include or exclude specific columns from the table,  e.g. through the first switch button you can include or exclude the
Class Name column.
Then you can select which columns include in the table for each specific class.

Beware! If you exclude a column from a class but that column is present also in other classes, it will not removed till you will explicitly exclude it from each class having it among its attributes. 

The Graph and the Table views are synchronised, then you can indifferently act on data with both the tools and all the changes will be reflected as follows:

  • Selection/unselection is reflected in both the views.
  • Records adding/removing is reflected in both the views.
  • Hidden elements in the Graph are not shown in the Table view. If you show an hidden element in the graph, then it will be visible again also in the Table view.

Finally you can perform an ascendant or descendant sorting of all the records in the Table according to a specific column just clicking the specified icons.

 


By default the selection status is adopted as sorting criterion, then all the selected elements are shown at the top.

Yes No

Algorithms

The Graph Widget offers the possibility to perform graph algorithms over the dataset to improve your analysis.
Users can exploit different algorithms according to their specific use cases and needs:

  • Shortest Path for Path Analysis, useful for route optimisation in logistics, supply and distribution chains and traffic optimisation.
  • Centrality, commonly adopted for Social network and community Analysis
  • Page Rank, the well known algorithm by Google used for graph resources ranking.

 

 

Shortest Path

To find a shortest path between two nodes in the graph, first of all we need to specify a source and a target node. You can do that in two different ways: by selecting the dedicated form in the Shortest Path menu and then by selecting the desired node

 

 

or you can just use the context menu in the graph to set a node as source or target node.

 

 

Then you can run the algorithm by clicking the dedicated link or you are can customise the advanced settings by clicking the gear icon on the right.

 

 

In the advanced settings you can set:

  • shortest path algorithm implementation to adopt for the execution. You can choose between A* and Dijkstra implementations.
  • direction: you can specify if the graph must be considered directed or undirected during the algorithm execution. In this way you can state whether the algorithm should operates on edges in a directed manner from source to target or whether the algorithm operates in an undirected manner.
  • weight field: if edges belonging to a specific class have a property containing a positive numeric weight you want to use as weight field for each edge, you can set it here by choosing the Edge class and then the above-mentioned property.

 

 

  • traversable edge classes: you can filter in or filter out all the edges belonging to one or more Edge classes. If an edge belongs to a filtered out Edge class, it will not be considered during the shortest path analysis.

 

 

When you click on the play button already shown above, the shortest path will be run and you will be able to consult the result, if any, both in the Graph or in the Table. All the elements composing the found path are selected (in the table are rendered at the top).

 

 

 

You cannot unselect the found path, then if you want to clean the result you can exploit the dedicated command.

 

 

Page Rank

You can customise and run the Page Rank algorithm from the dedicated submenu item.

 

 

 

In the advanced settings you can set:

  • damping factor: numeric parameter for the algorithm. The PageRank theory assumes that an imaginary surfer who is randomly clicking on links will eventually stop clicking. We call damping factor the probability, at any step, that the person will continue to browse. It is generally set around 0.85.
  • precision: numeric parameter that represents the required precision.
  • iterations: maximum number of iterations to perform.

 

 

When you click on the play button already shown above, the page rank algorithm will be run and as result a specific rank will be computed for each node in the graph. The nodes’ content will be updated with a new page rank property, reporting the rank value.

 

 

Centrality

Centrality algorithms are a measure of centrality in a graph based on shortest paths.
You can customise and run the Centrality algorithm from the dedicated submenu item.

 

 

In the advanced settings you can set:

  • centrality algorithm implementation to adopt for the execution. You can choose between the following implementations:
    • Closeness Centrality: the sum of its distances from all other nodes, calculated as the sum of the length of the shortest paths between the node and all other nodes in the graph.
    • Betweenness Centrality: the number of times a node acts as a bridge along the shortest path between two other nodes. For each pair of vertices in a connected graph, a minimised shortest path between them could exist. The betweenness centrality for each vertex is the number of these shortest paths that pass through the vertex itself.
  • direction: you can specify if the graph must be considered directed or undirected during the algorithm execution. In this way you can state whether the algorithm should operates on edges in a directed manner from source to target or whether the algorithm operates in an undirected manner.
  • harmonic (just for Closeness Centrality): states whether the algorithm calculates the harmonic mean or the arithmetic mean of distances. The harmonic mean is very useful for graphs that are not strongly connected.
  • weight field: if edges belonging to a specific class have a property containing a positive numeric weight you want to use as weight field for each edge, you can set it here by choosing the Edge class and then the above-mentioned property.

 

 

  • included node classes:  the algorithm is always performed taking into account all the nodes in the graph, nevertheless you can choose to add the computed centrality value to all the nodes or just to the nodes belonging to some specific Node classes. If a node belongs to a filtered out Node class, it will be considered during the centrality algorithm performing but no new values will be added in it.

 

When you click on the play button already shown above, the Centrality algorithm will be run and as result a specific centrality-value will be computed for each node in the graph. The nodes’ content will be updated with a new betweenness-centrality or closeness-centrality property, reporting the rank value.

 

 

Yes No

Edit

Users can hide or show specific sections (set of selected elements) of the visualised data. This allows the user more control over their data.

 

Yes No

Timeline

If you want to include a temporal analysis in order to see a  graph of how your data changes over the time, you can use the simple-to-use and intuitive timeline feature.

Open the dedicated menu item in the sidebar.

 

 

 

Here you can configure the input data for the timeline widget, by selecting several nodes or edge classes and for each of them a valid date property containing the event of interest. The date property will be used to fetch all the time data present in the current dataset, this way we will be able to analyse them in the timeline widget and use them to detect the relationships’ and entities’ changings happening through time.

Let’s suppose we want to analyse when the relationships between specific items appeared. We just have to choose the specific edge class and the desired date property, then we enable the timeline to see.

When the timeline is activated, every time you update the input configuration by adding or removing an item, the timeline chart will be automatically updated

 

 

The timeline widget will appear under the graph: we can view a time chart showing the time distribution of the events based off of the input configuration.

We can interact with this analysis by zooming in and out, changing the grain reaching each single event if needed, or by moving back and forth through time.

You can also go to a specific date or use a fit feature, that will combine the zoom and move functions in order to fit all the events in the visible time window. Eventually you can exploit the time filtering window, to narrow your temporal analysis to a specific and customizable range.

You can interact with the timeline through the control buttons beside or just by using the mouse as follows:

  • Control Buttons
    • zoom in/out: zooms in and out the timeline window.
    • left/right arrow: moves left and right the timeline windows.
    • fit: changes the timeline window in order to fit all the elements.
    • filtering window: click to define a custom timeline window in order to filter in all the elements in the graph matching the specified time slot.
      You can move the left and the right time-cursor to slide, narrow or expand the filtering time window. If you want to disable the filtering just click again the button.
    • “go-to-date” form: centers the timeline window to the specified input date.
  • Mouse Controls
    • horizontal scroll: moves left and right the timeline window.
    • vertical scroll: moves up and down the timeline window content.
    • ctrl + vertical scroll: zooms in and out the timeline window.

Top Down Analysis

The chart provided in the timeline is conceived to allow users to perform a simple temporal top down analysis: starting from a wider view it is possible to see at first glance how the events are distributed over the time. Let’s have a look at the example below. 

 

 

All the loaded events are approximately included in a range from 2000 to 2015, with a higher density in a more specific window defined between 2001 and 2005.


Let’s focus on this range by zooming in this time window. 

 

 

In this way you can reach a better distribution precision, then it’s easy to observe there are two main relevant sub-ranges inside the previous time window (2001-2005): the first one comprehends part of 2003 and 2004 years, and the second one, including all 2006.

You can perform this procedure iteratively till the maximum grain, where you can inspect each single event. Below is the focus on 2006. 

 

 

Here we are inspecting all the single events occurred in January 2006. 

 

 

Time filtering

Time filtering is maybe the most fascinating feature you can enjoy in the timeline widget.

As first thing you have to click the dedicated filter button, a customisable time window will appear. 

 

 

By moving the left and right bounds of the blue time window, you will be able to filter in or out in the graph all the elements whose events are included or excluded in the specified range.

Simply put, you can study the evolution of the graph through the time just playing with the time range.

On time window narrowing all the elements filtered out will be hidden in the graph. 

 

 

When you enlarge again the time window the filtered in elements are shown again in the graph above. 

 

 

This is very useful for many use cases, for example let’s suppose that we have got time data in our edges indicating when specific relationships were established between the entities in our graph.

Exploiting the time filtering we can easily inspect how the graph of connections changed through the time.

Yes No

Layout

In the Layout menu you can change the graph layout, that is the strategy the nodes and the edges are placed inside the graph viewport, and other generic settings.
Each graph layout has a unique algorithm that allows the user to view the same data from different perspectives. 

Graph Layouts


As you can see in the pictures above, the force-layout accepts different parameters to run  its algorithm:

  • Spring Length: the ideal length of edges in pixels.
  • Spring Coefficient: Hook’s law coefficient. The smaller number loosens edges length.
  • Drag Coefficient: system cool-down coefficient. The larger it is the faster system will stop.
  • Gravity Coefficient: Coulomb’s law coefficient. The smallest number makes repelling force stronger. Making it positive makes nodes attract each other.
  • Theta: Barnes-Hut simulation coefficient. Values larger than 1 will make system converge faster but not necessarily to the best layout.

You can set the default values through the specific Reset params to default button.
All these parameters have a mutual influence, then you can play with different combinations and reach your desired configuration.

All the other layouts just have the spacing factor parameter that you can change through the dedicated slider or the numeric input form.

Below is a list of the available layouts and examples of a few of them:

  • Force
  • Circle Breadthfirst
  • TopDown Breadfirst
  • Cola
  • Dagre
  • Spring
  • DAG
  • Concentric
  • Circle
  • Grid
  • Random
  • Preset

 

Force

 

 

 

Circle Breadthfirst

 

TopDown Breadthfirst

 

Circle

 

Grid

You can also combine different layouts with the force layout. For example you can run a circle breadthfirst layout and then invoke the force layout to refine the result.

 

 

 

Other Layout settings

In the Layout menu you can also set other generic settings:

  • hide/show the legend in the graph viewport.
  • auto-layout: when enabled every time the graph dataset changes, e.g. after elements adding or removing, the selected graph layout will be run.
  • layout timeout: specifies the graph layout running duration.
  • hide/show the labels for nodes or edges.
Yes No

Export

Users have the ability to export their graph as a PNG, JPEG, or JSON file through the dedicated menu item. 

 

 

Choose a valid file name and then click on the desired output export type, the file will be automatically downloaded.

 

Yes No

Top Toolbar

In the top toolbar users can exploit a text search bar and several shortcuts. 

 

 

  • Text Search Bar: users have the ability to search their database with a text search bar. The first 10 results are returned for the user. 

 

 

  • Expand All (coming soon): expands all the relationships, that is to say traverse all the connected edges, for the current selected nodes. New incoming data (nodes and edges) will be added to the dataset.
  • Delete: removes all the selected nodes and edges. Be certain of which elements you want to delete because this action cannot be undone.
  • Crop: deletes the not selected elements.
  • Open/Close Timeline: toggles the timeline opening or closing it according to the current status. Timeline cannot be opened if not correctly set up in the dedicated sidebar menu item. You can toggle the timeline both when you are inspecting data in the Graph Tab and when you are in the Table tab.

 


 

  • Bottom Table/Table Tab: changes the table perspective, you can choose to render the table in a dedicated tab beside the Graph tab or arrange the Table in a single tab below the graph viewport.

 

 

  • Save: saves the current widgets visualisation, that is to say data, metadata, applied filters and current perspective. Arcade does not have an autosave feature, so be sure to save your progress before exiting out of the browser. 

 

Yes No

Shortcuts

Shortcuts

Arcade has a number of shortcuts designed to assist users in visualising their data.

Right Click

Users can right click on a specific node or edge to open a pop up context menu that shows common functions, including:

  • view the node/edge content in the specific menu item on the side
  • choose a node as starting node for the Shortest Path algorithm
  • choose a node as target node for the Shortest Path algorithm
  • delete or hide the selected node/edge
  • traverse a specific relationship from the selected node

Click + Drag

By clicking on the dashboard, users can move the entire visualization within the dashboard.

Ctrl/Cmd + Click and Drag

This command allows the user to select multiple nodes and edges at once. Once elements have been selected they can be traversed, moved, or deleted.

Yes No

Table Widget

The Table widget allows users to inspect data through a tabular view. The data will be shown on the right and the side toolbar is shown on the left. The side toolbar can be expanded or collapsed for convenience.

 


In the data panel on the right you can find two tabs:

  • The Table tab offers a tabular view of your data.
  • The Datasource tab reports info about the datasource the widget is connected with, and allows you to inspect or edit the datasource (if you got the right permissions), try the connection and call a new full text indexing.


All the available features in the Table Widget are reachable in the side toolbar and in the top toolbar.

Yes No

Side Toolbar

To act on the data composing your current analysis you can use the side toolbar on the left.
Each menu item corresponds to a specific feature allowing users to edit the current dataset, e.g. you can fetch or remove data, filter it according some parameters, select or hide some elements and so on.

 

You can change perspective by expanding or collapsing the toolbar through the last dedicated menu item.

Yes No

Search

Arcade uses a connector that allows the user’s dataset to be shown in a tabular view regardless of the datasource model. After data is queried, the data will be shown in the table.

Users can search and retrieve data from the connected datasource in two ways.

 

  • For-Class records fetching: you just have to select a class and set the limit param, then click the play button.
  • Query typing: users can use the language of the source database (SQL, Cypher, Gremlin, etc.) to make queries and pull data. After data is queried, the data will be shown in the table. 

 


The first flag specifies if the last result will be appended to the previous ones or if it will replace them.

Yes No

Filter

Users can filter the visualised data by stating several filters based on the values of a specific property for a specific class.
This allows the user to see and analyse data focusing on different classes and property values.

The filtered out elements will be hidden in the table view. 

 

 

Yes No

Selection

Users can select and deselect all the retrieved records present in the table, or just to invert the current selection.

 

 

Obviously you can also select the records one by one by the dedicated table flag.

 

Yes No

Columns

Users can customise the tabular view through the Columns menu item.

 

It’s possible to include or exclude specific columns from the table,  e.g. through the first switch button you can include or exclude the Class Name column.
Then you can select which columns include in the table for each specific class.

Beware! If you exclude a column from a class but that column is present also in other classes, it will not removed till you will explicitly exclude it from each class having it among its attributes.

Yes No

Export

Users have the ability to export the tabular data as CSV file through the dedicated menu item.

 

Choose a valid file name and then click “Export as CSV”, the CSV text file will be automatically downloaded.

Yes No

Top Toolbar

In the top toolbar users can exploit a text search bar and several shortcuts. 

 

 

  • Text Search Bar: users have the ability to search their database with a text search bar. The first 10 results are returned for the user.

 

  • Delete: removes all the selected records.
  • Crop: deletes the not selected elements.
  • Save: saves the current widgets status: data, metadata, applied filters and current perspective.

 

 

Yes No

Pie Chart Widget

Users can perform series inspection in a specific datasource through the Pie Chart Widget, turning out very useful in comparing the share or proportion of various items.
Pie Chart divides a circle into multiple slices that are proportional to their contribution towards the total sum and offers an interactive and responsive behaviour in order to allow users to customise their analysis.

In the data panel you can find two tabs:

  • The Pie Chart tab allows you to inspect your data through the pie chart.
  • The Datasource tab reports info about the datasource the widget is connected with, and allows you to inspect or edit the datasource (if you got the right permissions), try the connection and call a new full text indexing.

 

All the available features in the Pie Chart Widget are reachable in the side toolbar and in the top toolbar.

Yes No

Pie Chart Viewport

In the Pie Chart viewport you can interact with the current pie in several ways.

Users can:

  • show details about each value belonging to the series hovering a specific slice.

  • select one or more slices.

  • move out/in some slices, that is to say series values, from the chart by unselecting/selecting the correspondent value in the legend on the right. The pie chart will be automatically updated according to the new value distribution. In the example below, we move in/out the N/P value from the pie, that seems to be the value with more occurrences among the entities.

  • browse the legend to have an ordered overview of all the found distinct values.

Yes No

Top Toolbar

The top toolbar is the core visual element in the Pie Chart Widget, as it allows users to trigger queries over the datasource and build the correspondent series in a very easy and fast way.

Let’s suppose we want to inspect the values’ distribution of the status property belonging to the Entity class, as shown in the sample above.
You just have to:

  1. Select a class among the available choices. After the class selection the second form on the right will be coherently updating showing all the available properties for the just selected class. Also the class cardinality, that is to say the total number of records for that class, will be shown on the right.
  2. Select the desired property, in this way the values’ distribution will be computed and the outcoming result will be shown in the pie chart viewport.

You can use the play button to run again the computation, that is useful when something changed in the datasource and you want to coherently update the analysis.

Through the save button users can save the current widgets status: data, metadata, applied layout and current perspective.

Yes No

Side Toolbar

Through the side toolbar on the left you can act on the chart layout or you can customise the way your series will be built, finally you can export the final result. 

 

 

You can change perspective by expanding or collapsing the toolbar through the last dedicated menu item.

Yes No

Layout

In the Layout menu you can act on the pie chart layout

 

 

  • Show Legend: shows or hides the legend in the pie viewport.
  • Show Labels: shows or hides the labels in the pie viewport.
  • Labels Position: specifies where the labels will be shown. You can choose between outside, to show the labels outside the slices, and inside, if you want to show the labels inside the slices.
Yes No

Settings

Users can set two thresholds to refine the series computation, in order to exclude less relevant values from the distribution analysis.

 

 

  • Min Value Occurrences: include in the series just all the values for the selected properties with cardinality (number of occurrences) greater than or equal to the specified threshold.
    Thus all the value properties with cardinality below the set threshold will be excluded from the distribution.
  • Most Relevant Values Occurrences: include in the series just the first n values (where n is the specified threshold)
    for the selected properties with greater cardinality.
    The set threshold corresponds to the maximum number of slices that can be rendered in the chart.

Default values are conceived to get the whole distribution without tail excluding.

Example 1

 

 

 

Here we are filtering out less important values for the status property exploiting just the second threshold: we are getting just the first 30 more relevant values, excluding the last 8 less relevant.

 

Example 2

 

 

 

Here we are filtering out less important values for the status property exploiting both the threshold as follows:

  • we are filtering out all the values having less than 3000 occurrences.
  • we are getting just the first 10 more relevant values, excluding the last 28 less relevant.
Yes No

Export

Users have the ability to export their graph as a PNG, JPEG, or JSON file through the dedicated menu item. 

 

 

Choose a valid file name and then click on the desired output export type, the file will be automatically downloaded.

Yes No

Bar Chart Widget

Users can perform series inspection in a specific datasource through the Bar Chart Widget, or Column charts, that uses rectangular bars to compare value between different categories/series.
Bar Chart is composed of a column for each value the series is composed of; the high of each them depends on the value property cardinality, that is the number of occurrences of that specific value. It offers an interactive and responsive behaviour in order to allow users to customise their analysis.

 

In the data panel you can find two tabs:

  • The Bar Chart tab allows you to inspect your data through the bar chart.
  • The Datasource tab reports info about the datasource the widget is connected with, and allows you to inspect or edit the datasource (if you got the right permissions), try the connection and call a new full text indexing. 

 

All the available features in the Bar Chart Widget are reachable in the side toolbar and in the top toolbar.

Yes No

Bar Chart Viewport

Users can perform analyses in two different ways:

  • single series mode
  • multi series

Each series is based on a class-property pair, and represents the values’ distribution for the stated property of the chosen class. The series name is built as follows:

<class-name>_<property_name>

It is possible to define several series involving different classes but also more series for the same class, in order to compare different values distribution for different properties of the same set of records.

In the Bar Chart viewport you can interact with the current series in several ways.

Users can:

  • show details about each value belonging to the one or more series hovering a specific column.

 

  • move out/in some series from the chart when in multi series mode by unselecting/selecting the correspondent series in the legend on the top. The bar chart will be automatically updated according to the new value distribution. Starting from the whole analysis we can move out the series based on the Intermediary-countries pair from the chart or, alternatively, the second one based on the Officer-countries pair.

 

 

 

 

  • browse the legend o have an ordered overview of all the series the analysis is composed of.

 

 

Yes No

Top Toolbar

The top toolbar allows users to work in single series mode by triggering queries over the datasource and by building the correspondent series in a very easy and fast way.

Let’s suppose we want to inspect the values’ distribution of the status property belonging to the Entity class, as shown in the sample above.
You just have to:

  1. Select a class among the available choices. After the class selection the second form on the right will be coherently updating showing all the available properties for the just selected class. Also the class cardinality, that is to say the total number of records for that class, will be shown on the right.
  2. Select the desired property, in this way the values’ distribution will be computed and the outcoming result will be shown in the pie chart viewport.

 

You can use the play button to run again the computation, that is useful when something changed in the datasource and you want to coherently update the analysis.

Through the save button users can save the current widgets status: data, metadata, applied layout and current perspective.

Yes No

Side Toolbar

Through the side toolbar on the left you can act on the chart layout or you can customise the way your series will be built, finally you can export the final result. 

You can change perspective by expanding or collapsing the toolbar through the last dedicated menu item.

Yes No

Layout

In the Layout menu you can act on the bar chart layout

  • Show Legend: shows or hides the legend in the pie viewport.

 

LABELS LAYOUT OPTIONS

All the following options refer to the labels shown when hovering a specific column in the bar chart.

  • Show Labels: shows or hides the labels.
  • Position: label position relating to the bar. You can choose among
    • top
    • left
    • right
    • bottom
    • inside
    • insideLeft
    • insideRight
    • insideTop
    • insideBottom
    • insideTopLeft
    • insideBottomLeft
    • insideTopRight
    • insideBottomRight
  • Align: horizontal alignment of text.
  • Vertical Align: vertical alignment of text.
  • Rotate: rotate label, from -90 degree to 90, positive value represents rotate anti-clockwise.
  • Distance: distance to the host bar. Not considered when inside position value is set.

 

X AXIS LABELS LAYOUT OPTIONS

All the following options refer to the labels of the x axis in the graphic.

  • Show Labels: shows or hides the labels.
  • Align: horizontal alignment of text.
  • Vertical Align: vertical alignment of text.
  • Rotate: rotation degree of axis label from -90 degree to 90, which is especially useful when there is no enough space for category axis.
    Positive value represents rotate anti-clockwise.

 

Y AXIS LABELS LAYOUT OPTIONS

All the following options refer to the labels of the y axis in the graphic.

  • Show Labels: shows or hides the labels.
  • Align: horizontal alignment of text.
  • Vertical Align: vertical alignment of text.
  • Rotate: rotation degree of axis label from -90 degree to 90, which is especially useful when there is no enough space for category axis.
    Positive value represents rotate anti-clockwise.
Yes No

Multi Series

Users can perform multi series analyses through the dedicated sidebar menu item.

To define a series to the current analysis you just have to specify a class and a property, then add the stated pair. In this way the specified series will be added to the underlying table. 

 

 

Finally use the run button to perform the multi series computation.
You can run the process every time you need, for example when something changed in the datasource and you want to coherently update the analysis. 

Yes No

Settings

Users can set two thresholds to refine the series computation, in order to exclude less relevant values from the distribution analysis.

 

 

  • Min Value Occurrences: include in each series just all the values for the selected properties with cardinality (number of occurrences) greater than or equal to the specified threshold.
    Thus all the value properties with cardinality below the set threshold will be excluded from the distribution.
  • Most Relevant Values Occurrences: include in each series just the first n values (where n is the specified threshold) for the selected properties with greater cardinality.
    In the single series case the set threshold corresponds to the maximum number of bars that can be rendered in the chart.
    That is not always true for the multi series case, as the threshold is not applied globally, but for each specific class-property pair.

Default values are conceived to get the whole distribution without tail excluding.

Example 1

 

 

 

Here we are filtering out less important values for the countries property exploiting just the second threshold: we are getting just the first 40 more relevant values, excluding the last 240 less relevant.

Example 2

 

 

 

Here we are filtering out less important values for the countries property exploiting both the threshold as follows:

  • we are filtering out all the values having less than 1500 occurrences.
  • we are getting just the first 20 more relevant values, excluding the last 260 less relevant.

 

Example 3 (multi series)

 

 

 

Here we are filtering out less important values for the countries property exploiting both the threshold as follows:

  • we are filtering out all the values having less than 1500 occurrences.
  • we are getting just the first 10 more relevant values, excluding the last 270 less relevant.

As already said above, in the single series case the second threshold corresponds to the maximum number of bars that can be rendered in the chart, but that is not always true for the multi series case: we can see we have 9 bars in the outcoming bar chart in the example, even though the threshold is 8. That is because the threshold is not applied globally for all the series, but for each specific class-property pair, thus the resulting set of values properties corresponds to the union of each filtered values properties subset coming from a particular series.

Yes No

Export

Users have the ability to export their graph as a PNG, JPEG, or JSON file through the dedicated menu item. 

 

 

Choose a valid file name and then click on the desired output export type, the file will be automatically downloaded.

Yes No

Text Widget

Users can add some notes to their dashboard thanks to a dedicated text widget. Of course text widget is not connected to any datasource, as it is just a WYSIWYG tool (“what you see is what you get“) that you can exploit in two different ways:

  • read-only mode in the dashboard

 

  • edit mode once opened, to edit its content

 

Yes No