繁体   English   中英

Seaborn 中的线图是“尖峰”

[英]Lineplot in Seaborn is "spikey"

我是 seaborn 的新手,我正在绘制多种类型游戏的销售情况。 当我将 plot 放在一起时,看起来 seaborn 正在规范化数据,但我希望我的 y 轴显示未规范化的全球销售额。 为避免这种情况,我尝试将sns.lineplot()中的估算器设置为None

当我将线图的估计器设置为=None时,我的数据突然变得全是“尖峰”。 我首先想到,也许我的数据集每年都有多个值,或者出于某种原因其中可能有一些 0,但事实并非如此。 对于某些类型,某些年份没有数据,每年都有数据的类型会出现“峰值”。

这里没有禁用估算器......

plt.figure(figsize=(20,10))
sns.lineplot(data=line_df,x='Year',y='Global_Sales',hue='Genre',ci=None)
plt.show()

不禁用绘图

这是当我禁用它并且线条变得“尖锐”时......

plt.figure(figsize=(20,10))
sns.lineplot(data=line_df,x='Year',y='Global_Sales',hue='Genre',ci=None, estimator=None)
plt.show()

情节禁用

“尖锐”是因为每个数据点都是用estimator=None绘制的。 对于每个 x 值,每个数据点都沿着垂直线段绘制到最大值。 然后该线下降到下一个 x 值中的最低值,然后垂直击中每个数据点,直到该 x 值的最大值。

如果你 plot 标记,这会更明显:

flights = sns.load_dataset("flights")
sns.lineplot(data=flights, x="year", y="passengers")
sns.lineplot(data=flights, x="year", y="passengers", estimator=None, marker='o')

在此处输入图像描述

暂无
暂无

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

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