Рассеянный график цветовых точек Python - PullRequest
0 голосов
/ 28 мая 2018

Я пытаюсь раскрасить точки в соответствии с их LOF (Local outlier Factor).Моя проблема в том, что некоторые точки имеют одинаковые координаты и, таким образом, нанесены друг на друга.Примером этого может быть

df = pd.DataFrame({
'x' : [1,1],
'y' : [1,1],
 })

lof = pd.DataFrame({
'lof' : [2,1],
})


fig= plt.figure(figsize = (4,3), dpi = 200)
plt.scatter(df.x,df.y, s = 8, c =lof.lof)
plt.show()

. Как видно из моего примера, у меня есть два очка сверху другого с разными показателями LOF.Желтая точка рисуется первой, а затем фиолетовая точка рисуется поверх желтой, делая ее невидимой.В идеале я хотел бы, чтобы на моем графике рассеяния сначала отображались точки с наименьшим значением LOF, а точки с наивысшим значением LOF - таким, чтобы были видны точки с наивысшим значением.

1 Ответ

0 голосов
/ 28 мая 2018
df['lof'] = lof
df.sort_values('lof', inplace=True)

plt.scatter(df.x, df.y, s=8, c=df.lof)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...