python-Seaborn tsplot不显示数据

我正在尝试使用seaborn制作一个简单的tsplot,但是由于我不清楚的原因,当我运行代码时什么都没显示.这是一个最小的示例:

import numpy as np
import seaborn as sns
import pandas as pd

df = pd.DataFrame({'value': np.random.rand(31), 'time': range(31)})

ax = sns.tsplot(data=df, value='value', time='time')
sns.plt.show()

python-Seaborn tsplot不显示数据

通常,tsplot会为每个时间点提供多个数据点,但是如果仅提供一个数据点,它是否不起作用?

我知道可以使用matplotlib轻松完成此操作,但是我想将seaborn用于其某些其他功能.

解决方法:

您缺少单个单位.使用数据帧时,其想法是已记录了同一单位的多个时间序列,这些时间序列可以在数据帧中单独标识.然后根据不同的单位计算误差.

因此,仅对于一个系列,您可以像下面这样再次使用它:

df = pd.DataFrame({'value': np.random.rand(31), 'time': range(31)})
df['subject'] = 0
sns.tsplot(data=df, value='value', time='time', unit='subject')

仅查看错误的计算方式,请看以下示例:

dfs = []
for i in range(10):
    df = pd.DataFrame({'value': np.random.rand(31), 'time': range(31)})
    df['subject'] = i
    dfs.append(df)
all_dfs = pd.concat(dfs)
sns.tsplot(data=all_dfs, value='value', time='time', unit='subject')
上一篇:Java 函数式编程--流操作


下一篇:python-如何使用matplotlib / seaborn和pandas数据框创建带有共享x轴的上下条形图