Python 按分类变量拆分散点图数据
我的数据集有三个特点:Python 按分类变量拆分散点图数据,python,matplotlib,categories,Python,Matplotlib,Categories,我的数据集有三个特点:性别、体重和身高。Gender功能由男性和女性标签组成 我想创建一个图表,根据性别按颜色分隔数据。似乎表明color参数需要某种编号系统,因此我不得不这样分开: male = dflog[dflog['Gender'] == 'Male'] female = dflog[dflog['Gender'] == 'Female'] _ = plt.scatter(male['Weight'], male['Height'], color='blue', marker='.',
性别
、体重
和身高
。Gender
功能由男性和女性标签组成
我想创建一个图表,根据性别
按颜色分隔数据。似乎表明color
参数需要某种编号系统,因此我不得不这样分开:
male = dflog[dflog['Gender'] == 'Male']
female = dflog[dflog['Gender'] == 'Female']
_ = plt.scatter(male['Weight'], male['Height'], color='blue', marker='.', alpha=0.05)
_ = plt.scatter(female['Weight'], female['Height'], color='red', marker='.', alpha=0.05)
这并不理想,有两个原因:一,它使情况变得过于复杂——本来可以在一行代码中完成的事情现在可以在四行代码中完成;第二,它覆盖了性别数据,而不是插值。我被迫添加alpha
,只是为了看看男性数据的扩展程度:
有没有办法用一行
plt
code(或sns
,我不特别要求)创建此绘图?使用seaborn尝试以下方法:
import seaborn as sns
sns.scatterplot(male['Weight'], male['Height'], hue=male['Gender'])
plt.show()
如果您有相同的问题,也许您应该尝试facet(如果您需要帮助,请告诉我)使用seaborn尝试以下方法:
import seaborn as sns
sns.scatterplot(male['Weight'], male['Height'], hue=male['Gender'])
plt.show()
如果你有同样的问题,也许你应该试试facet(如果你需要帮助,请告诉我)