I want to plot high dimensional data on x y plane. For that I know three methods: Principal component analysis (PCA), multidimensional scaling (MDS) and a method from spectral graph theory (using the second and third eigenvectors of the laplacian of the graph or w/e).
What are the different aspects of each technique and which one would be better if I want to minimize distance between the original vectors and distance between their 2d representations? Are there other (better) techniques?
(Preferably something with ready-made python code)