使用 R 可视化对象组件

学习目标

  • 介绍 R 可视化对象组件。

在 SAP Analytics Cloud 故事中访问 R

从故事菜单中添加 R 可视化对象

在故事中插入 R 可视化对象很容易!可以从工具栏的"添加"菜单选项中添加 R 可视化对象,也可以从"资产"面板中将微件拖放到故事中。

一个 SAP Analytics Cloud 故事,其中“资产”面板在屏幕左侧打开,R 可视化对象微件突出显示。此外,“添加”菜单下拉菜单会打开,并突出显示“R 可视化对象”。

如果 "添加" 菜单选项在工具栏中不可见,则可以使用 "更多" 菜单选项将 R 可视化对象微件添加到故事中。

一个 SAP Analytics Cloud 故事,其中突出显示了 R 可视化对象微件的“更多”菜单项和菜单路径。

R 可视化部件

R 可视化对象基于以下组件:

  1. 表结构: 基于模型、指定维、维属性和筛选器的输入数据

  2. 输入控件: 基于计算输入控件的输入参数

  3. R 代码脚本: 为生成可视化对象而执行的脚本

表结构

创建故事、选择数据源并将 R 可视化对象添加到故事后,可以在屏幕右侧的"生成器"面板中更改 R 可视化对象的表结构。

“生成器”面板,其中突出显示了“添加输入数据”。

  1. 选择 "+ 添加 先前图像中突出显示的输入数据"以打开" 输入数据 "面板。可以在" 输入数据 "面板中选择" 展开 "图标,预览输入数据表结构。 “输入数据”面板,其中突出显示了“展开”。

  2. 使用 表结构 设置指定输入数据的表结构。

  3. 行: 选择 "+添加维" ,从可用选项列表中选择维,将其添加到输入数据中。例如,如果要显示表中的产品组。

  4. 列: 用于管理可用度量。例如,向表中添加国家/地区。选择" 所有成员 "可显示当前可用度量。

  5. 过滤器: 用于管理输入数据的过滤器。例如,过滤数据以显示特定年份。

R 可视化对象的表结构中显示的“行(a)”、“列(b)”和“过滤器(c)”。

输入控制

还可以为可视化对象配置输入参数。

选择 "添加输入参数" 时,可以选择输入控件。如果故事已包含计算输入控件,则可以选择列出的任何参数。

在以下示例中,您可以看到名称字段下列出的两个选项。可以在以下各项之间选择:

  1. 现有维 ,允许用户选取维成员

  2. 静态列表 ,用于添加自定义值作为输入控件的选项

在以下示例中,选择了"现有维"

计算输入控件的对话框,显示“名称”、“属性”(模型和维)和“输入值”。名称为必填字段,并在系统中以红色突出显示,直到输入值。

R 代码脚本

在此示例中,可以看到创建的数据、R 代码和最终可视化对象。

稍后在本课程中,你将创建此示例中使用的 R 可视化对象。

数据

“输入数据”面板,展开数据预览。

R 代码

library(ggplot2)
library(dplyr)
library(grid)
library(gridExtra)

g1 <- ggplot(BestRunCorpRetail, aes(x = reorder(Lines,`Sales Revenue`/1000), y = `Sales Revenue`/1000 , fill = `Region` )) +
geom_col(stat = "identity" ) + coord_flip() +
scale_fill_brewer(palette="Blues") +
labs(title = " Sales Revenue (in k) by Product Line / Region", x = "Product Lines / Region ", y = " Sales Revenue") +
theme_light() +
theme(legend.position="bottom")

g2 <- ggplot(BestRunCorpRetail, aes(x = reorder(Lines,`Gross Margin`/1000), y = `Gross Margin`/1000 , fill = `Region` )) +
geom_col(stat = "identity" ) + coord_flip() +
scale_fill_brewer(palette="Reds") +
labs(title = " Gross Margin (in k) by Product Line / Region", x = "Product Lines / Region ", y = "Gross Margin") +
theme_light() +
theme(legend.position="bottom")

gg1 <- ggplot_gtable(ggplot_build(g1))
gg2 <- ggplot_gtable(ggplot_build(g2))

grid.arrange(gg1, gg2, ncol = 2, widths = c(1/2,1/2))

最终 R 可视化对象

编写 R 代码后,可以将控件添加到 SAP Analytics Cloud 中的 R 可视化对象。R 代码和控件可用于创建可视化对象,在此示例中,将"销售收入"和"按产品线/地区的毛利润"与"年"的输入控件进行比较。

使用图像上方的代码创建的最终 R 可视化对象。