Я пытаюсь создать график из результата tSNE, окрашивая точки на основе плотности их окрестностей - это количество соседей вокруг точки и расстояние до соседей.
Учитывая матрицуКоординаты результата tSNE:
[,1] [,2]
[1,] -4.2060515 3.1718312
[2,] -4.2671476 5.6677296
[3,] -3.1792470 3.5504695
[4,] -3.2507526 4.7510075
[5,] -4.5662531 3.3866132
[6,] -5.0863544 3.1760014
[7,] -4.7380256 5.5291478
[8,] -5.0510355 5.0373626
[9,] -4.3288679 4.3316772
[10,] -5.2947188 4.6130757
[etc,] ... ...
Я хочу быть в состоянии раскрасить точки в соответствии с критериями выше.
Но пока все, что я могу получить, это то, что это только среднееЕвклидово расстояние, но это не правильно:
В идеале мне нравится нечто похожее на грубый макет, где точки, расположенные ближе друг к другу, окрашены темнее, чем точки, у которых меньше местных соседей:
d <- dist(best.tsne, method = "euclidean")`
d.scaled <- quick.scale(apply(as.matrix(d), 2, sum),
floor = 0, ceiling = 1)
ii <- cut(d.scaled,
breaks = seq(min(d.scaled), max(d.scaled), len = 100),
include.lowest = TRUE)
colors <- colorRampPalette(c("white", "blue"))(99)[ii]
Я в порядке с назначением цветов и т. Д., Просто нужно уметь подсчитывать очки за очки.