python plotly lib 无法在 powerBI 中显示桑基图
sankey diagram can't be displayed in powerBI by python plotly lib
- 我有以下脚本 python
import pandas as pd
import chart_studio.plotly as py
import plotly.graph_objects as go
labelListTemp1 = list(set(dataset.source.values))
labelListTemp2 = list(set(dataset.target.values))
labelList = labelListTemp1 + labelListTemp2
sankey_node = list(dict.fromkeys(labelList))
fig = go.Figure(data=[go.Sankey( node = dict( pad=15,
thickness=20,
line = dict(color = "black", width = 0.5),
label = labelList,
color = "blue" ),
link = dict(source = dataset.source.apply(lambda x: labelList.index(x)),
target = dataset.target.apply(lambda x: labelList.index(x)),
value = dataset.value))])
fig.show()
然后我在 powerBI 中启用 python 可视化,然后将源、目标和值拖放到 'Values' 部分。
然后我 运行 步骤 1 中的 python 脚本
但是 powerBI 中没有显示桑基图。代码打开浏览器并在浏览器中显示桑基图,这不是我想要的。请参考以下截图。
[![在此处输入图片描述][1]][1]
预期结果:我希望在powerBI中显示桑基图,这样我就可以发布图表并发送给团队成员。
有高手帮忙看看我的代码有什么问题吗?
谢谢,
切丽
我从 post 中找到一个带有“import plotly.io as pio”的答案,然后用下面的代码
替换 fig.show()
pio.write_image(fig, 'perfUXRGoal.png').
使用上面的代码,它是在 powerBI 中显示的静态图像,而不是交互式 html 图表。
- 我有以下脚本 python
import pandas as pd import chart_studio.plotly as py import plotly.graph_objects as go labelListTemp1 = list(set(dataset.source.values)) labelListTemp2 = list(set(dataset.target.values)) labelList = labelListTemp1 + labelListTemp2 sankey_node = list(dict.fromkeys(labelList)) fig = go.Figure(data=[go.Sankey( node = dict( pad=15, thickness=20, line = dict(color = "black", width = 0.5), label = labelList, color = "blue" ), link = dict(source = dataset.source.apply(lambda x: labelList.index(x)), target = dataset.target.apply(lambda x: labelList.index(x)), value = dataset.value))]) fig.show()
然后我在 powerBI 中启用 python 可视化,然后将源、目标和值拖放到 'Values' 部分。
然后我 运行 步骤 1 中的 python 脚本
但是 powerBI 中没有显示桑基图。代码打开浏览器并在浏览器中显示桑基图,这不是我想要的。请参考以下截图。
[![在此处输入图片描述][1]][1]
预期结果:我希望在powerBI中显示桑基图,这样我就可以发布图表并发送给团队成员。
有高手帮忙看看我的代码有什么问题吗?
谢谢, 切丽
我从 post 中找到一个带有“import plotly.io as pio”的答案,然后用下面的代码
替换 fig.show()pio.write_image(fig, 'perfUXRGoal.png').
使用上面的代码,它是在 powerBI 中显示的静态图像,而不是交互式 html 图表。