0

我有两个时间序列,比方说一天中每个时间的推文,用于两个不同的类别。我想将它们绘制为一个欢乐图,其中 x 轴表示一天中的时间,高度表示推文的数量。

我的代码是:

from joypy import joyplot
import pandas as pd
import numpy as np
np.random.seed(0)
df = pd.DataFrame(index = range(24 * 2))
df['value'] = list([int(10 * aa) for aa in np.random.rand(24 * 2)])
df.loc[23 : 30, 'value'] = 0
df['hour'] = [aa for aa  in range(24)] * 2
df['cat'] = ['A'] * 24 + ['B'] * 24
joyplot(df, by = 'cat', column = 'hour')

所以df.head(3)会返回:

   value  hour cat
0      5     0   A
1      7     1   A
2      6     2   A

我期待看到 in 的变化,valuehour我确实得到了两个平面图 在此处输入图像描述

绘制两条线(以了解预期的情节)

dfa = df[df.cat == 'A']
dfb = df[df.cat == 'B']
plt.figure()
plt.plot(dfa.hour, dfa.value)
plt.plot(dfb.hour, dfb.value)

我得到: 在此处输入图像描述

我应该如何解决这个问题?

4

0 回答 0