python - Seaborn TypeError:没有找到与指定签名匹配的循环,并且在使用hue时找不到ufunc add
问题描述
我正在尝试使用 Seaborn 获得联合图。我的数据框有三列,看起来像这样
Sample pT Multiplicity
0 Jet1 132.2770 31
1 Jet1 181.0730 44
2 Jet1 118.1880 32
3 Jet1 155.7290 40
4 Jet1 250.8600 25
... ... ... ...
1995 Jet2 134.8610 25
1996 Jet2 192.9830 58
1997 Jet2 176.5910 33
1998 Jet2 60.8583 29
1999 Jet2 158.0140 54
当我尝试使用以下行时
sns.jointplot(x="pT", y="Multiplicity", hue="Sample", data=df)
我遇到错误
TypeError: No loop matching the specified signature and casting was found for ufunc add
我曾尝试使用分类变量,但无济于事。当我不使用 'hue' 选项时,我不会遇到任何错误。
对象的数据类型是
Sample object
pT float64
Multiplicity object
dtype: object
请帮忙!谢谢
解决方案
您的代码中没有任何问题。但是您的 Multiplicity dtype 必须是 int64。
df['Multiplicity'] = df['Multiplicity'].astype(int)
推荐阅读
- flutter - 如何避免 Flutter 顶部出现重复屏幕
- java - NetBeans 11.3 没有正确构建项目?
- html - 在包含溢出元素的容器底部创建白色模糊
- javascript - Vue 使用对象值作为方法名
- java - 当数据返回有或没有子项的项目时如何验证 PACT(填充或不存在现有数组)
- django - 内联表单集:Django 'main.Course' 没有 ForeignKey 到 'main.Teacher'
- python - Series 的真值对于 IF 语句是不明确的
- javascript - 如何在同一个图中获得不同的图表类型
- firebase - Flutter 和 Firebase:根据当前用户 ID 获取 DocumentSnapShot
- database - 我有一个关于功能依赖和违反第二范式的问题