使用matplotlib,python 2.7
问题描述:
表示除x,y之外的列我想对某些数据进行模拟,并且想针对不同类别显示不同颜色的点。我有三列,我使用的两列是x,y,我想使用第三列,其中有两个类别在我的情节中反映出来。使用matplotlib,python 2.7
y = np.array(q)
x = np.array(p)
fig = plt.figure(figsize = (18,18))
plt.show()
for t in range(6000):
ax = fig.add_subplot(2,1,1)
for i in s[t:t+4]: # s is a list that contains the third column
if i == 'Match':
ax.plot(x[i], y[i], 'bs')
else:
ax.plot(x[i],y[i],'ro')
答
有很多方法可以做到这一点,这里是用熊猫
#generate data
df = pd.DataFrame(np.random.random(size=(100,2)), columns=['x','y'])
df.loc[:,'cat'] = ['Match' if np.random.randint(0,2)==1 else '-' for i in range(100) ]
plt.plot(df.loc[df.cat=='Match','x'],df.loc[df.cat=='Match','y'],'bs')
plt.plot(df.loc[df.cat!='Match','x'],df.loc[df.cat=='Match','y'],'ro')
+0
谢谢@Diziet朝日! – nezz
一个你能请张贴代码为您最好的尝试?谢谢 – lrnzcig
@Irnzcig:请参阅上面的代码,我认为groupby可以帮助,但我不知道如何在这里使用它。 – nezz