python - 二维线图中的垂直线伪影
问题描述
我正在尝试使用 seaborn 创建一个 2D 折线图,但我得到了几个在这里看到的人工制品,即突然向下或向上射出几乎不可见的垂直线的线:
我的代码遵循 seaborn 示例(test.csv
可以在此处找到示例):
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('test.csv')
sns.set()
lp = sns.lineplot(x=data['x'], y=data['y'], sort=False, lw=1)
plt.show()
我做错了什么,还是 matplotlib 无法处理重叠值?
解决方案
默认情况下,Seaborn 会计算同一 x 水平上 y 变量的多个观测值的平均值。可以使用estimator=None
参数禁用/控制此行为。
将其添加到原始代码和数据中时,我们可以观察到工件不再存在。
data = pd.read_csv('test.csv')
sns.set()
lp = sns.lineplot(x=data['x'], y=data['y'], sort=False, lw=1, estimator=None)
plt.show()
推荐阅读
- javascript - 传播事件时如何获取按钮值
- java - 需要验证用户输入的包含字母和数字的代码
- excel - 从 Excel 打印到 pdf 时自动分页
- xenforo - XF 2.0 管理面板路径更改
- spring - 如何在没有 xml 配置的情况下创建 int-http:outbound-gateway
- powershell - 带有空格的 PowerShell 参数导致 vsts 失败
- java - 如何检查所有字符是否具有均匀频率
- c - 以下 C 代码的输出让我感到困惑
- sql - SqlServer - 如何显示每个月的数据,包括没有数据的月份
- javascript - 仅在服务器上上传图像有问题吗?Laravel + Vue