The Panel Editor

When you add a new panel to a dashboard, X-Assist will open the panel editor.

From here, you can set the title of your new panel (along with an optional, detailed description), define the query parameters and preview the resulting panel.

Query Editor

In the query editor, you select the measure and dimensions that you want to visualize, together with any other filters you might need.

Measures and Dimensions

Each panel requires you to select exactly one measure. Dimensions and filters are optional, but meaningful queries typically require dimensions and filters as well.

The selected measure is the numeric quantity that you want to visualize, while the selected dimensions split/group the measure by certain attributes.

For example, you could select “Events – Count” as the measure to get the total number of Events in X-Assist as a single value. If you also add the “Events – Category” dimension to the query, the events will be grouped by category and the result will contain six values (one for each category) instead.

Not all combinations of measures and dimensions make sense, and some of them will result in an invalid query. Refer to the Join Compatibility Matrix for more information.

The Time Dimension

Most of the time, you do not want to visualize all data, but rather only data in a certain time range. On top of that, you typically also want to group your data by a unit of time (e.g. by month or by week).

To achieve this, you can add a time dimension to your query.

The selected time dimension is the primary attribute that you want to use to filter by time (you can also add additional time constraints under “Other filters”). If you visualize the data as a line or bar chart, the time dimension becomes the x-axis of the chart.

Adding a time dimension to the query has two effects:

  1. The data gets filtered by the selected time range.

  2. The data gets grouped by the selected unit of time (unless “Without grouping” is selected).

By default, the panel will use the dashboard's global time range, but panels can opt out of this behaviour and specify a custom time range by enabling the “Override global time range” check box.

Organization Filter

If your X-Assist tenant contains multiple organizations, you can use the organization filter to restrict the query to certain organizations.

If you do not select any organization, the query will be executed across all organizations that you have access to.

Other Filters

If filtering the data by time range is not enough, you can add additional filter for any measure and dimension under “Other filters”.

Depending on the selected attribute, you can choose from one of the following operators.

“Equals” / “does not equal”

These operators select records where the selected attribute equals / does not equal any of the given value(s).

“Is set” / “is not set”

These operators select records that have / do not have a value for the selected attribute. Unlike all other operators, no value needs to be specified.

“Contains” / “does not contain”

These operators select records where the selected attribute contains / does not contain any of the given values.

“Less than” / “less than or equal to” / “greater than” / “greater than or equal to”

These operators select records where the selected attribute is less than / less than or equal to / greater than / greater than or equal to the given numeric value.

“In date range” / “not in date range”

These operators select records where the selected attribute is inside / not inside the given date range. The date comparison uses UTC as the time zone, and both the upper and lower bound of the range are inclusive.

“Before date” / “after date”

These operators select records where the selected attribute is before / after the given reference date. The date comparison uses UTC as the time zone, and the given reference date is always exclusive.

Filter by Measures

Filters can not only be applied to dimensions, but to measures as well.

However, unlike filters for dimensions, which are applied before the results are grouped and aggregated, filters for measures are applied afterwards (if you are familiar with SQL, this is the HAVING clause).

The order of operations is then as follows:

  1. Filter the records by the selected date range of the time dimension (if any).

  2. Apply any other filters for dimensions to the result set.

  3. Group the result set by selected unit of time of the time dimension (if any).

  4. Group the result set by the values of the selected dimensions.

  5. Count the number of records in each group.

  6. Apply any other filters for measures in the result set.

This may sound complicated, but it is an incredibly powerful and useful too. For example, the following query lists all flight segments departing in the next seven days that have more than ten people booked on a single flight:

Visualizations

X-Assist supports the following visualization types. Note that not every kind of visualization fits every query.

Bar Chart

A regular stacked bar chart, which is suitable to visualize categorical data along the time axis. Special colouring rules are automatically applied if the query contains certain dimensions, such as a risk level.

Line Chart

Line charts are suitable for visualizing arbitrary data along the time axis. Special colouring rules are automatically applied if the query contains certain dimensions, such as a risk level.

Pie Chart

Pie charts are suitable to visualize the ratios in a categorical dataset. Special colouring rules are automatically applied if the query contains certain dimensions, such as a risk level.

Radar Chart

Radar charts are suitable to visualize multivariate categorical data.

Table

You can use a table if you prefer to view the raw results rather than a visualization. If you want to fetch individual records without grouping and aggregation, include a dimension that only contains unique values (e.g. the person ID) in your query.

Number

Use a number panel if you only want to visualize a grand total.

Note that the number panel will always show the measure of the first row in the result set, and all other rows are ignored. You can check if your query returns multiple result rows by temporarily changing the visualization type to a table.

Last updated