为了账号安全,请及时绑定邮箱和手机立即绑定

无法使用 matplotlib 重新创建 catplot

无法使用 matplotlib 重新创建 catplot

开心每一天1111 2022-05-24 16:16:06
我有一个熊猫数据框:df = pd.DataFrame(data = {'X':['Jason', 'Molly', 'Tina', 'Jason', 'Tina', 'Tina'], 'Y': [13,19,52,14,12,12]})       X   Y0  Jason  131  Molly  192   Tina  523  Jason  144   Tina  125   Tina  12我想在 matplotlib 中重新创建 seaborn 库的 catplot 功能,例如:sns.catplot(x='X', y='Y', kind="box", data=df)所以我这样做:plt.boxplot(df.X, df.Y)但这不起作用,我收到一个错误:TypeError:无法使用灵活类型执行归约如何在 matplotlib 中获得相同的结果?我在 matplotlib 中执行此操作,因为使用 seaborn,我必须手动更改 x,并且我想使用 for 循环动态更改 x
查看完整描述

1 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

没有直接的等价物,因为 seaborn 首先按 x 对数据进行分组。使用 matplotlib 时,您需要手动进行分组,


import pandas as pd

import matplotlib.pyplot as plt


df = pd.DataFrame(data = {'X':['Jason', 'Molly', 'Tina', 'Jason', 'Tina', 'Tina'],

                          'Y': [13,19,52,14,12,12]})


plt.boxplot([col.Y.values for n, col in df.groupby("X")])

plt.show()


查看完整回答
反对 回复 2022-05-24
  • 1 回答
  • 0 关注
  • 127 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号