據根據用戶分享的歌曲,使用協同過濾算法計算歌手之間的關聯關係。使用了R語言的可視化包igraph算法
library(igraph)#讀取數據,注意編碼格式是utf-8singer <- read.csv('c:/data/tmp/singers-sub.csv', head=T,fileEncoding='UTF-8',stringsAsFactors=F)#加載數據框 g <- graph.data.frame(singer) #生成圖片,大小是800*800pxjpeg(filename='singers.jpg',width=800,height=800,units='px')plot(g, vertex.size=5, #節點大小 layout=layout.fruchterman.reingold, #佈局方式 vertex.shape='none', #不帶邊框 vertex.label.cex=1.5, #節點字體大小 vertex.label.color='red', #節點字體顏色 edge.arrow.size=0.7) #連線的箭頭的大小 #關閉圖形設備,將緩衝區中的數據寫入文件 dev.off()
點擊下載程序使用的數據文件
結果以下:佈局