pandas数据帧中值的散点图

时间:2016-12-21 20:04:44

标签: python pandas plot

我有以下格式的pandas数据帧。我试图根据ClusterAssigned绘制这些数据,可能有0和1的不同颜色。

    Distance    ClusterAssigned
    23      1
    35      1
    20      1
    264     0
    830     0

我尝试使用此代码,但似乎没有产生完美的结果。

groups = dfprintscatter.groupby('ClusterAssigned')

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.margins(0.05) 
for name, group in groups:
        ax.plot(group.Distance, group.ClusterAssigned, marker='o', linestyle='', ms=5, label=name)
ax.legend()

plt.show()

1 个答案:

答案 0 :(得分:3)

你需要在matplotlib中使用scatter函数,不需要循环或进行任何分组。

x = np.arange(len(dfprintscatter))
y = dfprintscatter.Distance
c = dfprintscatter.ClusterAssigned
plt.scatter(x, y, c=c, marker='o') 

使用seaborn

import seaborn as sns
sns.lmplot(x=np.arange(len(dfprintscatter)), y='Distance', hue='ClusterAssigned', fit_reg=False)