使用Pandas绘制重复的数据框。

3

我想绘制一个包含以下两列数据的pandas数据框:

For i in data1:
  for j in data2:
      traces.append(
           go.Scatter(
                 x=df['A'],
                  y=df['B']
               )
           )

绘图

标签页

列A有重复值。当我绘制它们时,它正确地绘制了第一个点(列'A'1,2,3列'B'2,5,6),但是当它开始绘制第二组重复值 'A' 1,2,3 'B' 4,2,3时,它从'B'点6画一条线到下一个'B'点2。 它不会像下面显示的那样重新开始。

从这个:

否

到这个:

是

2个回答

4
基本上,您需要分别绘制每三条线:
ax = plt.axes()
df['span'] = df.index // 3 # Assign identical markers to each span
df.groupby('span').apply(lambda x: x.plot(x='A', y='B', legend=False, ax=ax)
plt.show() # If not in ipython

1
这绝对更加清晰和可扩展。+1 - Vaishali

3
几乎与@DYZ的解决方案相同。 我仍然发布此内容,因为我已经尝试过这种方法。
ax = df.iloc[:3, [0,1]].plot('A', 'B')
df.iloc[3:6, [0,1]].plot('A', 'B',ax = ax)
df.iloc[6:9, [0,1]].plot('A', 'B',ax = ax)

实际上,它们是三个图表,但在同一轴上重叠显示。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接