Introducing Adjacent Crosstabs for Multi-Dimensional Data Analysis

Crosstabs are a very popular object within the List & Label Designer, that’s why we’re continuously adding enhancements to this important features. So far though, despite all added extensions, crosstabs have ultimately been a simple grouping in two dimensions. From version 29 on, they’ll become more dimensional.

This new feature is called “adjacent crosstabs”. It refers to crosstabs that are still grouped on multiple levels at row level. At column level however, several completely different groupings can be used and output one after the other. A simple example would be grouping the sales of different products – initially over time, e.g. over the years. And now – additionally – in a comparison of countries or regions. Something like this:

adjacent crosstab with multiple groupings

Of course, subtotals can also be hidden. Additionally, the two parts of the crosstab can also aggregate over different values, ​​if desired.

Creating those kinds of crosstabs became a breeze with version 29. On the axis definitions’ tab, you’ll find a new combo box that determines which crosstab is being edited. By default, only the “base” is available here, which corresponds to a simple crosstab, just like before.

creating adjacent crosstabs

The button behind the combo box opens an editor which allows you to create additionally adjacent crosstabs:

editor for crosstabs

From there, you can edit the axis definition. For example, in order to obtain the desired analysis by country, the corresponding selection is made under “Columns”:

add a column in an adjacent crosstab

Important to know: row grouping is the same for all crosstabs. Therefore, it only needs to be edited for the base level. The results will look as shown above.

This new feature provides crosstabs with a lot more flexibility and power. And while working on this, we’ve implemented another one: for cell properties (e.g. color), you can now easily refer to the data source fields in formulas. Up until now, you had to work with the somewhat unwieldy functions Crosstab.Row$() or Crosstab.Column$() and their relatives. From now on though, it will be very intuitive and straightforward with “Customers.Country”, as seen in the example above. To color the column “Germany” blue, instead of using the function

Cond(Crosstab.Row$()=”Germany”, LL.Color.Blue, LL.Color.White)

use the more readable function

Cond(Customer.Country=”Germany”, LL.Color.Blue, LL.Color.White).

Small change – big impact. In addition, performance and memory consumption of crosstabs have been optimized as well.

Related Posts

Leave a Comment