Plotly中如何将多段非连续轨迹合并为单个trace?
合并多段非连续Plotly Trace为单个Trace的方法
可以把多段非连续的图形合并成单个trace,不需要创建多个Scatter对象。只需要在两段数据的x、y坐标列表中插入None(或np.nan)作为分隔符,Plotly会自动识别并绘制断开的线段,同时图例只会显示一个名称。
修改后的示例代码
import plotly.graph_objects as go # 第一段数据 + None分隔 + 第二段数据 x = [1, 2, 0, None, 0, 1, 2] y = [3, 1, 1, None, 0, 2, 0] fig = go.Figure(go.Scatter(x=x, y=y, name="Name")) fig.show()
原理说明
- 你之前创建两个同名trace的方式,Plotly仍会将它们视为独立的trace,图例中可能会出现重复名称(有时会自动添加序号区分),无法实现“单个trace”的效果。
- 在坐标列表中插入
None后,单个Scatter trace会在None的位置断开,形成多段非连续的线条,同时整个图形只对应一个图例项,完全符合你的需求。
内容的提问来源于stack exchange,提问作者def user
相关产品推荐
相关产品推荐

