让seaborn pointplot用一条线显示NaN数据

时间:2018-02-23 12:41:51

标签: python visualization seaborn errorbar

我正在尝试绘制一个如下所示的数据框:

Quarter, score
1890.1, NaN
1890.2, 0.000000
1890.2, 0.000000
1890.2, -0.073413
1890.2, 0.000000
1890.3, NaN
1890.4, NaN
1891.1, NaN
1891.2, NaN
1891.3, NaN
1891.4, NaN
1892.1, NaN
1892.2, 0.000000
1892.3, 0.000000

为了做错误条形图,我使用了seaborn pointplot。我的问题是,没有显示NaN值。所以我得到一个有这样差距的情节:graph with missing NaN values 有没有办法让seaborn用线显示缺失的数据?非常感谢你的帮助!

我的代码如下:

a4_dims = (15, 8.27)
fig, ax = plt.subplots(figsize=a4_dims)
ax = sns.pointplot(x="Quarter", y="score", data=df, aspect=2.5, capsize=.5)
plt.xticks(rotation=45)
plt.tight_layout()

1 个答案:

答案 0 :(得分:0)

也许您可以尝试设置加入

'如果为True,将在相同色调级别的点估计值之间绘制线条。'

或者,您可以使用:

use pandas.DataFrame.fillna

df['score']=df['score'].fillna(method='ffill')

取决于您希望如何填充该行,您可以使用

  

ffill:将最后一次有效观察传播到下一个有效    bfill:使用NEXT有效观察来填补空白