【问题标题】:Plotly in R Power BIR Power BI 中的绘图
【发布时间】:2016-10-18 08:53:29
【问题描述】:

如何在 Power BI 中创建交互式 R 图(例如 Plotly)?下面的代码没有返回任何错误,也没有显示图表:

library(plotly)
library(ggplot2)

z = ggplot(data = dataset) + geom_point(mapping = aes(x = Console, y = Search))
ggplotly(z)

数据来源:

source <- "https://cdn.rawgit.com/BlueGranite/Microsoft-R-Resources/master/power-bi/gameconsole.csv"  
game.console <- read.csv(source, header = TRUE)

【问题讨论】:

标签: sql-server r powerbi


【解决方案1】:

根据this question in Power BI's Community forums

Plotly 库作为 HTML 支持的一部分支持 R 驱动的自定义 仅限视觉效果,目前一般不支持 R 视觉效果。

只有在为 R 视觉效果生成 IMAGE\PNG 时,才能使用 Plotly PBI。不是 HTML。

对于自定义视觉效果,我们即将推出一项功能,该功能还将使基于 R 的自定义视觉效果呈现为 html。

希望这会有所帮助。

【讨论】:

  • 嗨 Jared,您好,欢迎来到 Stack Overflow,请不要忘记通过 welcome tour 了解您在此处的方式(并获得您的第一个徽章)
【解决方案2】:

原因是目前 Power BI 只支持 R 可视化组件创建的渲染图表为 PNG。

尝试以下方法:

p <- plot_ly(x = dataset$period, y = dataset$mean, name = "spline", line = list(shape = "spline"))
plotly_IMAGE(p, format = "png", out_file = "out.png")

但问题在于,虽然是通过 plotly 渲染的,但可视化效果不会是交互式的,因为它只是一个 PNG 图像。

如果您想使用 plotly 创建交互式可视化。您可以做的唯一方法是创建自定义 Power BI 可视化并将其导入报表。请参阅this 帖子以获得良好的介绍。

【讨论】:

    【解决方案3】:

    PowerBI 仅支持呈现为 PNG 的图表,而 plotly 格式为 HTML。您可以尝试将图表另存为 PNG,然后在 PowerBI 内的 R 控制台中打印。 您首先必须注册一个 plotly 帐户here

    注册后,在您的帐户名称旁边的右上角箭头上,然后点击设置 -> API 密钥。您将能够生成 API 密钥。使用此代码复制并粘贴您的用户名和 API 密钥。

    Sys.setenv("plotly_username"="....")
    Sys.setenv("plotly_api_key"=".....")
    

    然后添加这段代码,将绘图转成png格式并打印出来。

    fig <- plot_ly(x = dataset$Console, y = dataset$Search)
    Png <- plotly_IMAGE(fig, out_file = "plotly-test-image.png")
    print(Png)
    

    正如另一个答案中提到的,此图不会像 PowerBI 中的图那样具有交互性。要在 PowerBI 中创建交互式绘图,您必须创建自定义视觉对象。遵循 R 自定义视觉示例 here 或 radacad 示例 here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-10
      • 1970-01-01
      • 1970-01-01
      • 2023-02-14
      • 1970-01-01
      • 2016-06-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多