我正在使用 Power BI 的 Python 可视化工具,我想创建一个绘图,如 此视频 我可以使用seaborn和matplotlib创建绘图,但是当我尝试绘图时它给出了错误: 但它确实有效,因为它在 Power BI 外部的 html 窗口中打开图形。 我做错了什么? 这是 Power BI Python 视觉中使用的代码:
import pandas as pd
import plotly.graph_objects as go # Import go for graph_objects
# Create a scatter plot figure
fig = go.Figure()
# Add scatter trace
fig.add_trace(
go.Scatter(
x=dataset['I_B'],
y=dataset['I_C'],
mode='markers',
marker=dict(size=8, color='blue', opacity=0.7)
)
)
# Customize the layout
fig.update_layout(
title="Scatter Plot of I_B vs. I_C",
xaxis_title="I_B",
yaxis_title="I_C",
width=800,
height=500,
template="plotly_white"
)
# Show the figure inline
fig.show()
Power BI 中的 Python 可视化工具,输出显示与 Plotly 的交互式可视化不完全兼容。 这就是为什么 Plotly 通常会尝试在外部 HTML 窗口中打开绘图,但这不是您的要求。 您可以尝试使用plotly.io库将您的图形转换为与Power BI兼容的静态图像格式。试试下面的代码
import pandas as pd
import plotly.graph_objects as go # Import go for graph_objects
import plotly.io as pio # Import plotly.io for static image rendering
fig = go.Figure()
fig.add_trace(
go.Scatter(
x=dataset['I_B'],
y=dataset['I_C'],
mode='markers',
marker=dict(size=8, color='blue', opacity=0.7)
)
)
fig.update_layout(
title="Scatter Plot of I_B vs. I_C",
xaxis_title="I_B",
yaxis_title="I_C",
width=800,
height=500,
template="plotly_white"
)
img_bytes = pio.to_image(fig, format='png')
from IPython.display import Image
Image(img_bytes)