【问题标题】:Use R script to refresh data in Power BI: Maximize Power-BI pre-built visuals and R's computational power使用 R 脚本刷新 Power BI 中的数据:最大化 Power-BI 预构建的视觉效果和 R 的计算能力
【发布时间】:2019-10-08 10:50:57
【问题描述】:

假设我有一个非常简单的 R 脚本,它执行以下操作: 它通过将 Sine 函数应用于 x 列来创建一个新的 'y' 列。 然后将此数据帧的结果存储为 csv。 下面的示例我将此新数据集命名为 R_Calculated_Table.csv

# The following code to create a dataframe and remove duplicated rows is always executed and acts as a preamble for your script: 

# dataset <- data.frame(x)
# dataset <- unique(dataset)

# Paste or type your script code here:
dataset$y <- sin(dataset$x)
write.csv(dataset, 'C:/Users/User1/Desktop/R_Calculated_Table.csv')

此 R_Calculated_Table csv 文件用作 Power BI 视觉对象的来源。在这个例子中,我想简单地绘制 x 如何随 Sine 函数变化。

现在假设我将函数从 Sine 更改为 Tangent。 然后,每当我运行脚本时,R 都会替换 R_Calculated_Table.csv。

但是,直到我右键单击“R_Calculated_Table”并单击“刷新数据”后,Power BI 视觉对象才会更新。刷新后,我现在可以看到切线函数的样子,因为视觉效果将被更新。

这里的问题是,我需要以某种方式右键单击并刷新数据源。 是否有可能在每次触发 R 脚本时以某种方式触发 Power BI 刷新数据,而不是手动右键单击源表以使其刷新?

下面的截图是我使用 R 脚本计算正弦值的地方

理想情况下,我希望用户能够选择他们想要查看的功能。 R 将执行计算,Power BI 将获取更新的 CSV 文件并可视化数据。

这在 Power BI 中可行吗?

为了抽象这个问题,我最终想要的是最大限度地利用 Power BI 内置的视觉效果,同时利用 R 强大的计算能力。

R 视觉对象的交互性有限,因为我的最终用户希望能够从视觉对象中“导出数据”。他们还希望显示工具提示。

当然,对于使用 ggplot 功能的更复杂的可视化,无法在 Power BI 中复制。

【问题讨论】:

    标签: r powerbi


    【解决方案1】:

    不,在 Power BI Desktop 中无法自动刷新或计划刷新。 在您的要求中,您正在加载一个数据集,将其重写,然后必须手动刷新才能加载它,然后显示新的数据集。

    可能可以在coming version of Power BI Desktop 中执行此操作,如果您回写到某个位置,那么您可能可以在桌面中设置刷新,细节有限,但微软已经展示了它与将数据库作为数据源,但它将基于时间,而不是像文件写入这样的事件。

    【讨论】:

    • 如果我将数据源转换为实时流数据,这可行吗?我对直播的理解是 Power BI 会根据直播数据不断刷新数据。
    • 不,实时流式传输用于仪表板对象,而不是报表,并且更适合流式传输不断变化的度量。我会建议一个不同的报告应用程序。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-04
    • 2021-03-14
    • 1970-01-01
    • 2021-12-14
    • 1970-01-01
    • 2021-05-01
    相关资源
    最近更新 更多