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

如何使用FacetGrid显示一些选定的行

如何使用FacetGrid显示一些选定的行

炎炎设计 2021-05-14 14:15:47
我有一个数据框,并有一个名为“ my_row”的列。它具有许多价值。我只想查看FacetGrid上属于该行“ my_row”特定值的某些数据。我尝试制作数据框的一个子集并将其可视化,但还是以某种方式让seaborn“知道”我的原始数据框在“ my_row”列中具有更多值,并显示了不需要的行的空图。因此,使用下面的代码仍然可以得到一个包含两行数据的图形,此后还有许多空图。X = df[(df['my_row']=='1') | (df['my_row']=='2')].copy() g = sns.FacetGrid(X, row='my_row', col='column')我怎样才能告诉python只绘制那2行?
查看完整描述

3 回答

?
长风秋雁

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

对于任何遇到此问题的人,问题在于那my_row是绝对类型。要解决,请将其更改为str。


IE


    X = df[(df['my_row']=='1') | (df['my_row']=='2')].copy()

    X['my_row']=X['my_row'].astype(str)

    g = sns.FacetGrid(X, row='my_row', col='column')

现在应该可以了!:)


查看完整回答
反对 回复 2021-05-25
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞


并将我的代码更改为此:


g = sns.FacetGrid(df, row='my_row', col='column')

for i in list(range(2,48)):

    for j in list(range(0,12)):

        g.axes[i,j].set_visible(False)

因此,我不得不逐个遍历每个图,以使其不可见。但是我认为应该有一种更简单的方法来做到这一点。最后,我仍然不了解FacetGriddf在使用X和输入时如何知道原始数据帧的大小。


这是一个有效的答案,但我认为必须有更好的解决方案。我的答案的一个问题是,当我保存图形时,在保存的图形中有一个大的空白空间(对应于将其可见性设置为False的轴),在运行代码时在jupyter笔记本中看不到。如果FacetGrid只是绘制我提供的数据框作为输入(在本例中为X),就不会再有问题了。应该有一种方法可以做到这一点。


查看完整回答
反对 回复 2021-05-25
  • 3 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信