nev*_*int 2 r cluster-analysis ggplot2 tidyverse
以下是使用IRIS数据的t-SNE代码:
library(Rtsne)
iris_unique <- unique(iris) # Remove duplicates
iris_matrix <- as.matrix(iris_unique[,1:4])
set.seed(42) # Set a seed if you want reproducible results
tsne_out <- Rtsne(iris_matrix) # Run TSNE
# Show the objects in the 2D tsne representation
plot(tsne_out$Y,col=iris_unique$Species)
Run Code Online (Sandbox Code Playgroud)
这产生了这个情节:
我如何使用GGPLOT来制作这个数字?
我认为最简单/最干净的ggplot方法是将所需的所有信息存储在a中data.frame然后绘制它.从上面粘贴的代码中,这应该有效:
library(ggplot2)
tsne_plot <- data.frame(x = tsne_out$Y[,1], y = tsne_out$Y[,2], col = iris_unique$Species)
ggplot(tsne_plot) + geom_point(aes(x=x, y=y, color=col))
Run Code Online (Sandbox Code Playgroud)
我使用常规plot函数的情节是:
plot(tsne_out$Y,col=iris_unique$Species)
Run Code Online (Sandbox Code Playgroud)