plt.scatter被返回PathCollection.set() got an unexpected keyword argument 'hue'
时间: 2023-08-02 21:39:17 浏览: 795
根据错误信息,是在调用 `PathCollection.set()` 方法时出现了问题,而这个方法是 matplotlib 库中的一个私有方法,通常不需要手动调用。而你的目的似乎是想给 `plt.scatter()` 方法传入一个名为 `hue` 的关键字参数。根据 matplotlib 的文档,`scatter()` 方法本身不支持 `hue` 参数,但可以使用 seaborn 库中的 `scatterplot()` 方法来实现类似的功能。如果你已经安装了 seaborn 库,可以尝试使用以下代码来画出带颜色映射的散点图:
```python
import seaborn as sns
import matplotlib.pyplot as plt
sns.scatterplot(x='x', y='y', hue='hue', data=data)
plt.show()
```
其中 `x` 和 `y` 分别为横轴和纵轴的数据,`hue` 为需要按照颜色映射的数据列名,`data` 为包含以上数据的 pandas.DataFrame 对象。如果你需要更多的帮助,请提供更多的代码和数据上下文信息。
相关问题
PathCollection.set() got an unexpected keyword argument 'camp'
这个错误信息中的 `PathCollection.set()` 函数的错误提示是“got an unexpected keyword argument 'camp'”,也就是说,这个函数不支持名为 `camp` 的参数。
根据您提供的代码,这个错误可能是因为在 `ax.scatter()` 函数中错误地将 `cmap` 写成了 `camp`,也就是:
```
ax.scatter(x_1, y_1, c=y_1, camp=plt.cm.Blues, s=3)
```
应该将 `camp` 改为 `cmap`,也就是:
```
ax.scatter(x_1, y_1, c=y_1, cmap=plt.cm.Blues, s=3)
```
这样就可以正确地设置散点的颜色映射了。
PatchCollection.set() got an unexpected keyword argument 'markers'
`set()`方法在`matplotlib.collections.PatchCollection`类中通常用于设置集合的行为或属性,但它可能不接受名为'markers'的关键词参数。如果你试图使用这个不在官方文档指定的关键字,可能会导致`TypeError`,因为该方法没有预期到这个额外的参数。
错误信息"got an unexpected keyword argument 'markers'"表明`set()`方法期望的参数列表中并没有'markers'。为了修复这个问题,你应该确认你正在使用的`set()`方法的定义或者查阅相关的API文档以了解正确的参数名。
例如,如果你想设置点标记(如果这是`collections.PatchCollection`的一个相关特性),你可能应该查找其他与点标记相关的`add_patch`或`scatter`方法,而不是直接尝试在`set()`方法中设置它。
```python
# 如果有可用的add_marker方法
marker_properties = {'color': 'red', 'size': 10}
collection.add_marker(**marker_properties)
# 或者如果是在创建scatter plot时
plt.scatter(x, y, **marker_properties)
```
阅读全文