Creating interactive R Visualizations in SAP Analytics Cloud - Simply how it works

20 mei 2019

In our previous blogs the features of both ‘R Visualization’ as an object in your story as well as how to utilize stored output created by Automated Predictive Modelling within SAP Analytics Cloud were discussed.

In this blog the ‘Application Design’ functionality within SAP Analytics Cloud will be shown. More specifically: how R Visualizations might play a role in such an ‘interactive’ Application scenario, both functioning as trigger and result.

Setting up your first ‘Analytic Application’

By navigating to the Main Menu and via ‘Create – Analytic Application’, a standard template will be generated for your ‘New Analytic Application(1)’:

SAP Analytics Cloud - McCoy & Partners

Within the Analytic Application’s menus, a lot of functionality is similar to what you might find in a generic Story, such as the Insert, Tools and Designer menus and options.

When creating a simple Application, your main working area will be the ‘Canvas’. Just like the objects that will become part of the Canvas, the Canvas itself also has Script possibilities that become visible when you hover over the Canvas-buttom. Some of them you might recognize from Lumira Designer (e.g. OnInitialization).

SAP Analytics Cloud - McCoy & Partners

Setting up your first couple of Canvas’ objects

Even though the final Application will have the following objects:

SAP Analytics Cloud - McCoy & Partners

The first step is creating the ‘result’-objects that will be shown based on the result of a different object (or, possibly as a result of user interaction). In this Application, the user wants to see a Plot (including points and trendline), and, a Table with the Gross Margin and Gross Margin Plan Measures. However; only in case the correlation between these two measures is sufficiently high (e.g. > 0.95) on a Store-level. Where the ‘Plan’ could also be output that was generated in the past by an ‘Automated Predictive Modelling’ Forecast.

The ‘Table’-visualization can be quite straightforward: simply showing the Measures (columns) over Time (rows) in a simple Table Structure. You still might want to tweak a few settings, such as it not being shown at ‘view time’ (i.e. deselect in the ‘Styling’-menu under Actions):

SAP Analytics Cloud - McCoy & Partners

And perhaps hiding it from your overall canvas (i.e. context menu of the Canvas-item):

SAP Analytics Cloud - McCoy & Partners

The plot including points and trendline can be created via a R Visualization using the ‘ggplot2’-library (for an extensive ‘ggplot2’-guide, please check this site).

The R Visualization itself uses the ‘BestRun_Advanced’-dataset, with 2 Measures (Account: Gross Margin, Gross Margin Plan) and 1 Dimension (Store):

SAP Analytics Cloud - McCoy & Partners

While using the ‘ggplot2’-library and ‘ggplot(… aes)) + geom_point() + geom_smooth()’-script in the Editor:

SAP Analytics Cloud - McCoy & Partners

The Preview at the bottom right is an indication that the script is working on the used dataset!

SAP Analytics Cloud - McCoy & Partners

Setting up your first interaction

A second R Visualization will calculate what the Correlation is between the Gross Margin and Gross Margin Plan (note: same setup with regards to data, dimensions and measures):

SAP Analytics Cloud - McCoy & Partners

Whereas within the R Visualization’s script:

SAP Analytics Cloud - McCoy & Partners

The ‘onResultChanged’ can be changed. The nice thing about the output of the R Visualization, i.e. the ‘gMCorrelation’-variable storing the result, is that this variable can be called in the script of the object!

Using the below script will show the ‘Table_2’ and ‘RVisualization_1’ Canvas Items if the Correlation is > 0.95:

SAP Analytics Cloud - McCoy & Partners

Please note that it might also be useful to show the ‘nCor’-result on the Canvas, e.g. by converting it using ‘toString()’ and subsequently ‘applyText’ to add it within a Text-item.

Running the Analytic Application

On the top-right corner of the Canvas, there is a ‘Run Analytic Application’-button to test the created Application:

SAP Analytics Cloud - McCoy & Partners

When testing the Application, the result is that the two items are shown, as expected (as the preview of the R Visualization showed a Correlation of 0.9875!):

SAP Analytics Cloud - McCoy & Partners

Whereas when the 0.95 is changed to 0.99:

SAP Analytics Cloud - McCoy & Partners

The two visualizations will no longer become visible, and as such only the ‘Correlation Analysis’-header is shown.

SAP Analytics Cloud - McCoy & Partners

McCoy's consultants are specialized in SAP Analytics Cloud and are more than willing to help you on the road of Predictive Analytics. Please feel free to contact us for more information.

Think Analytics, Think McCoy.