for idx, gp in df.groupby(level=0, axis=1):
gp.xs(idx, level=0, axis=1).plot.scatter(x='C', y='D', title=idx)
或者,如果您想要一个绘图:
import matplotlib.pyplot as plt
cd = {'A': 'red', 'B':'blue'} # color by group
fig, ax = plt.subplots()
for idx, gp in df.groupby(level=0, axis=1):
gp.xs(idx, level=0, axis=1).plot.scatter(x='C', y='D', ax=ax, label=idx, c=cd[idx])
可以在第0级列上
group
分别绘制每个列。分组只会分割数据帧,它不会修改任何内容,因此您可以使用元组作为键,或者使用DataFrame.xs
删除现在冗余的多索引级别或者,如果您想要一个绘图:
相关问题 更多 >
编程相关推荐