2016-12-27 152 views
0

enter image description hereSeaborn tsplot - Y轴比例

import seaborn as sns 
import matplotlib.pyplot as plt 

sns.tsplot(data = df_month, time = 'month', value = 'pm_local'); 
plt.show() 

使用这个代码,我得到这个空白的情节,我相信因为y轴的规模。我不知道这是为什么,这里是第5行我的数据框的(它由12行 - 1行每月): enter image description here

我该如何解决这个问题?

+2

您可以编辑代码为[完整示例](https://stackoverflow.com/help/mcve)吗? –

回答

2

我认为这个问题与unit有关。该函数预期在数据传递为DataFrame的情况下指示数据属于哪个主题。这个函数行为对我来说并不明显,但看到这个例子。

# Test Data 
df = pd.DataFrame({'month': [1, 2, 3, 4, 5, 6], 
        'value': [11.5, 9.7, 12, 8, 4, 12.3]}) 

# Added a custom unit with a value = 1 
sns.tsplot(data=df, value='value', unit=[1]*len(df), time='month') 

plt.show() 

您还可以使用提取Series和绘制。

sns.tsplot(data=df.set_index('month')['value']) 
plt.show() 

enter image description here

0

我有同样的问题。在我的情况下,这是由于数据不完整,因此每个时间点至少有一个缺失值,导致默认估计器每个时间点返回NaN。

既然你只显示你的数据的前5条记录,我们不能分辨你的数据是否有同样的问题。您可以看到以下修补程序是否正常工作:

from scipy import stats 

sns.tsplot(data = df_month, time = 'month', 
      value = 'pm_local', 
      estimator = stats.nanmean);