4.1. Where the Magic Happens¶
The Dashboard is where the interaction between the user and the data occurs. The operational principle is that there are multiple sources of information represented by different tables. One of the tables must serve as the Primary Table that will anchor all other tables. This can be as either a Primary to Foreign key relationship or a Many-to-Many relationship. How these relationships are constructed are reviewed in the Data Import training module.
The import facts to remember are that data in tables are related by matching items in columns. It must be an exact match. This creates the dynamic functionality of the widgets.
These relationships are outlined below:
4.2. Types of Data and Widgets¶
As was discussed in data importing, data type is an import feature of the data in a table. The type of data controls how NoviLens operates.
The following table displays the most common pairing of data types with their respective widgets:
Here are the points to consider:
Bar Graphs can be “Stacked” if the primary X axis value is a record count
Dictionaries can have pairs
The Select widget provides a rapid method of filtering categorical data.
Categorical text can be searched by a dictionary and then used by a dictionary widget
you cannot change the legend names, they are “fixed” as the column names in the table
The following is a data table of Mortality Regarding COVID-19 virus:
There are multiple data types in the table:
Date is a timestamp
Province, Country, and Type are text
Lat and Longitude are floats
Value is numeric
Based on the data type, the following widgets can be deployed:
Timestamp: Line graph
Text: bar graph (if treated as category), dictionary if treated as a dictionary search
Lat and Longitude: convert to points for use in Map widget
Value: bar graph, scatter plot.
4.3. Bar Widget¶
The Bar Widget is the workhorse widget in NoviLens, handling a variety of data types and offering a number of configuration options. Starting with the following Data Table, the functionality of this widget will be described.
The first Bar Widget configured is a Binned Bar Widget of the number of counts in the field Customer Lifetime Value.
The X axis is a representation of the numeric data, the bins Ranges were set in the Widget configuration window. The Y axis are the number of counts that meet the binning criteria. Configuration is described in the following video:
The Bar Widget can perform simple mathematical functions on column information such as sum, average, min, max, etc. Configuration of this functionality is highlighted in the following video:
4.4. Stacked Bar Widget¶
In viewing the Stacked Bar Widget, the Y axis represents the record counts. The X axis is the primary X axis of Binned Value, the Stacked X is the categorical data of the Gender. Because the Y value is a count, binning is possible.
4.5. Line Widget¶
The line widget is used to visualize relationships between temporal data or to show relationships between two sets of data points. In NoviLens, the most common use is to couple the Line Widget with the date widget to perform a filtering function on the fused data set.
Referring back to the COVID-19 data, the following represents a screen shot of a time line widget coupled with the Date Filter widget.]
The Line Widget has multiple configuration options that can cause some confusion. To review:
- the X-Axis: there can be multiple lines displayed on the X-Axis by using the
Multi-Line Mode. If you Split-by…. you can select Multiple X-Axis Fields. Remember that the X-axis between the field will probably differ and provide distinct populations on the graph. You can stack multiple X axis in this manner.
the alternative Multi-Line: here you split by a selected Field. You only can select one field but can limit the number of rows displayed. In this case, the legend displays the value of the items in the field.
The timeline widget has multiple configuration options:
the timeframe Scale
the Y axis variable (follows same “rules”; numeric can make use of math operators)
if multiple variables are to be plotted
the maximum number of lines to display (prevents “crowded graph”)
4.6. Graph Widget¶
The graph widget is a specialty function widget in that it generates an entirely new data structure within lens based on graph theory. The structure consists of nodes (items) and edges (relationships that may be defined as items). In Lens, the nodes and edges are assigned by selecting columns associated within the same table, EVEN IF OTHER TABLES ARE ASSOCIATED THROUGH MANY-TO-MANY RELATIONSHIPS (primary-foreign keys table relationships will show table relationships since node labels are viewed as primary keys). For those of you familiar with graph models, the system does not, at this time perform advanced features such as attribute relationships or multigraph relationships.
Relationships in graphs are binary, that is how is a source node related to a target node? For instance, John be one node (row) representing a column of family members while Mary is another node (row) representing Family members. The common feature is the column value “sibling”. This becomes the edge.
The representation of a table as a graph is shown below:
In viewing the table and the graph, be sure to note that the model on describes that the relationship as siblings, it infers that they could be related to each other BUT as represented, the label only is an inference. A filter would need to be applied to the complete data set to determine if in fact, Mike was the father; John and Mary were siblings ALL IN THE SAME FAMILY.
The following is a demonstration of the use of the graph widget in Lens:
The most important point to remember is to experiment with the layout in order to get the best representation of your data.
4.6.1. What are graphs good for?¶
Graphs have a number of features that make visual analysis more intuitive for the user. Clusters of “like” items are readily visible as well as the common attributes that connect the items. From a “backend” or compute perspective, sorting and filtering are much faster. Graph models have the potential to uncover previously unexplored relationships within your data, especially when combined with Natural Language Processing.
Relationships between nodes or items in graphs can be determined using a number of different alogrithms. NoviSystems will be adding these features in the future as well as the capabilities to join multiple tables into graph structures that will allow in depth analysis of relationships based on centrality.