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

Power BI中Matplotlib折线图无法正常连接的问题求助

问题解决:Power BI Python视觉中Matplotlib折线不连续

核心问题原因

折线图绘制时,若x轴数据(R_Length)未按顺序排列,Matplotlib会按数据原有顺序连接点,导致线条断裂、不连续。另外原代码的DataFrame初始化方式有误,会导致列名与数据对应关系异常。

修复步骤

1. 修正DataFrame初始化逻辑

直接传入多个序列创建DataFrame的方式不符合pandas规范,需用字典明确指定列名与对应数据:

dataset = pandas.DataFrame({
    'R_Length': R_Length,
    'ScatterPlot': ScatterPlot,
    'ClusterLine': ClusterLine,
    'TargetLine': TargetLine
})

2. 按x轴数据排序

去重后对R_Length进行排序,确保折线连接的点按x轴顺序排列:

dataset = dataset.drop_duplicates().sort_values(by='R_Length')

3. 完整修正代码

# 正确初始化DataFrame
dataset = pandas.DataFrame({
    'R_Length': R_Length,
    'ScatterPlot': ScatterPlot,
    'ClusterLine': ClusterLine,
    'TargetLine': TargetLine
})

# 去重后按x轴排序
dataset = dataset.drop_duplicates().sort_values(by='R_Length')

import matplotlib.pyplot as plt 

ax = plt.gca()

# 绘制散点图
dataset.plot(kind='scatter', x='R_Length', y='ScatterPlot', color='blue', ax=ax)

# 绘制ClusterLine折线
dataset.plot(kind='line', x='R_Length', y='ClusterLine', color='black', linestyle='solid', ax=ax)

# 绘制TargetLine折线
dataset.plot(kind='line', x='R_Length', y='TargetLine', color='red', linestyle='-', ax=ax)

plt.show()

额外排查点

  • 检查ClusterLine和TargetLine列是否存在大量缺失值(NaN),缺失值会导致折线中断,可通过dataset[['ClusterLine', 'TargetLine']].isnull().sum()查看,必要时用fillna()填充或筛选掉缺失行。
  • 确认去重操作(drop_duplicates())没有误删必要的连续数据点,若不需要去重可考虑移除该步骤。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 17:04:56