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

使用wandb.log记录matplotlib pcolormesh图时显示异常求助

解决wandb记录pcolormesh图像的转换警告问题

问题原因

wandb默认会将Matplotlib图表转换为Plotly交互格式,但pcolormesh生成的路径集合不被Plotly的转换工具兼容,导致出现警告且图像无法正常显示。

解决方案

方案1:跳过Plotly转换,直接记录静态Matplotlib图像

无需修改原有绘图逻辑,只需在wandb.log时用wandb.Image包装Matplotlib的figure对象,强制wandb以静态图片格式记录,避免自动转换:

# 保留你的绘图代码
fig = plt.figure()
plt.pcolormesh(out_abs.cpu())
plt.ylabel('Frequency (Hz)')
plt.xlabel('Time')

# 记录时用wandb.Image包装figure
wandb.log({"heatmap": wandb.Image(fig)})
plt.close(fig)  # 释放内存,避免泄漏

方案2:直接用Plotly生成热力图替代pcolormesh

如果需要交互格式的图像,直接用Plotly原生热力图组件生成,wandb对Plotly图表支持良好,不会出现转换问题:

import plotly.graph_objects as go

# 将tensor转换为numpy数组
data = out_abs.cpu().numpy()

# 创建Plotly热力图
fig = go.Figure(data=go.Heatmap(z=data))
fig.update_layout(
    xaxis_title="Time",
    yaxis_title="Frequency (Hz)"
)

# 直接记录Plotly图表
wandb.log({"heatmap": fig})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 01:32:35