SetDirectory[NotebookDirectory[]]; (*csak egyszer kell*)
ClearAll[program];(*nem árt*)
program[s_String]:= Module[{adj,m,dd,skalazott,ddd,cc},
adj=Import[s,"AdjacencyMatrix"];(*most jó így, de ha ugyanazzal a gráffal kísérletezünk, akkor ez is csak egyszer kell*)
m=(adj/(Total[adj,2]));
dd=DiagonalMatrix[1/(Sqrt[m.ConstantArray[1.,Import[s,"VertexCount"]]])];
MatrixForm[skalazott=dd.m.dd];(*ha nem nézzük meg, nem érdemes megformázni*)
Column[{dd. Eigenvectors[skalazott][[1]],dd.Eigenvectors[skalazott][[2]]}];(*itt is: ha nem nézzük meg, nem érdemes megformázni*)
ddd=dd.Eigenvectors[skalazott][[2]];
cc=ClusteringComponents[ddd,2];
GraphPlot[AdjacencyGraph[adj],VertexRenderingFunction->({If[cc[[#2]]==1,Red,Blue],EdgeForm[Black],Disk[#,.15]}&),ImageSize->800]]

program["karate.gml"]

program["dolphins.gml"]