You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Plotly Python的px.imshow()能否传入SVG替代图像数组实现可视化

关于Plotly中px.imshow()传入SVG文件的问题解答
  • px.imshow() 本身 不支持 直接传入SVG格式文件完成可视化。
    该接口的设计目标是处理栅格类图像数据,仅支持接收数值数组、PIL图像对象、PNG/JPG等栅格格式图像的读取结果作为输入,底层逻辑是将逐像素的数值映射为对应颜色完成渲染。而SVG属于矢量图形格式,本身没有像素矩阵结构,无法被px.imshow()直接解析识别。
  • 若需要在Plotly图表中嵌入SVG内容,可以通过go.Figure的布局配置实现,参考示例代码如下:
import plotly.graph_objects as go

# 初始化画布
fig = go.Figure()

# 可先添加你需要的其他图表trace,例如散点图、热力图等
# fig.add_trace(go.Scatter(x=[1,2,3], y=[4,5,6]))

# 读取本地SVG文件的文本内容,或者直接传入SVG字符串
with open("你的本地SVG文件路径.svg", "r", encoding="utf-8") as f:
    svg_content = f.read()

# 在布局中插入SVG图层
fig.update_layout(
    images = [
        dict(
            source=svg_content,
            x=0,  # SVG左上角在画布的x坐标
            y=1,  # SVG左上角在画布的y坐标
            sizex=0.3,  # SVG占画布宽度的比例
            sizey=0.3,  # SVG占画布高度的比例
            xref="paper",
            yref="paper",
            opacity=1,
            layer="above"  # 配置SVG在图表上层还是下层
        )
    ]
)

fig.show()

内容的提问来源于stack exchange,提问作者kumquatlemon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 08:06:03