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

如何解决Plotly报错:'PathCollection'对象无'get_offset_position'属性

解决Matplotlib转Plotly图形报错问题

问题根源

你使用的mpl_to_plotly方法已被Plotly官方废弃,新版本Plotly中该方法已从plotly.tools模块移除,因此运行代码会触发错误。

解决方案

推荐两种可行方案,优先选择原生Plotly API,兼容性和功能更完善:

方案1:直接使用Plotly原生API绘制散点图(推荐)

无需依赖Matplotlib,直接用Plotly的express或graph_objects模块实现:

# 使用plotly.express快速绘制
import plotly.express as px

fig = px.scatter(x=[1, 2, 3], y=[23, 12, 34])
fig.show()

或者用更灵活的graph_objects:

import plotly.graph_objects as go

fig = go.Figure(data=go.Scatter(
    x=[1, 2, 3],
    y=[23, 12, 34],
    mode='markers'  # 指定为散点模式
))
fig.show()

方案2:使用新版本转换工具实现Matplotlib到Plotly的转换

如果必须保留Matplotlib绘图逻辑,可使用Plotly官方提供的替代方法plotly.io.to_plotly:

import matplotlib.pyplot as plt
import plotly.io as pio

mpl_fig, ax = plt.subplots()
ax.scatter(x=[1, 2, 3], y=[23, 12, 34])
plotly_fig = pio.to_plotly(mpl_fig)
plotly_fig.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 07:00:55