d.music <- read.csv("music-sub.csv", row.names=1) f.std.data <- function(x){ (x - mean(x))/sd(x) } x <- apply(d.music[,3:7], 2, f.std.data) d.music.cor <- cor(t(x)) d.music.dist <- 1 - abs(d.music.cor) library(rggobi) gg <- ggobi(d.music) gg["distance"] <- as.vector(d.music.dist) names <- unlist(dimnames(d.music)[1]) tmp <- matrix(c(rep(names, each=62), rep(names,62)), ncol=2) edges(gg["distance"]) <- tmp