繁体   English   中英

Python seaborn plot 上的线图缺失值

[英]Python seaborn lineplot missing values on the plot

我正在尝试使用 seaborn 创建线图,对于我所拥有的点的特定情况,plot 在绘制的线上缺少一些点,导致 plot 不正确。代码片段如下所示

import matplotlib.pyplot as plt
import seaborn as sns

x = [0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.6, 0.8, 1.0]
y = [0.0, 0.21, 0.41, 0.81, 1.0, 1.0, 1.0, 1.0, 1.0]


ax = sns.lineplot(x = x, y = y)
sns.scatterplot(x = x, y = y, ax = ax)
plt.show()

得到的plot如下图

在此处输入图像描述

知道为什么会这样吗? 我尝试使用 seaborn 版本 0.11.2 和 0.12.2

使用lineplot时,文档说

默认情况下,plot 在每个 x 值处聚合多个 y 值,并显示集中趋势的估计值和该估计值的置信区间。

因此,您需要拥有:

ax = sns.lineplot(x=x, y=y, estimator=None)

停止聚合发生。

你必须使用seaborn吗? 如果没有,直接使用matplotlib:

import matplotlib.pyplot as plt


x = [0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.6, 0.8, 1.0]
y = [0.0, 0.21, 0.41, 0.81, 1.0, 1.0, 1.0, 1.0, 1.0]

plt.plot(x,y, marker='o')
plt.show()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM