如何理解R語(yǔ)言做網(wǎng)絡(luò)圖的分析,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到貢嘎網(wǎng)站設(shè)計(jì)與貢嘎網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類(lèi)型包括:成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、主機(jī)域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋貢嘎地區(qū)。
1、一個(gè)包括一列數(shù)據(jù)的數(shù)據(jù)框,每一行是各個(gè)節(jié)點(diǎn)的名稱(chēng)
2、一個(gè)包含兩列數(shù)據(jù)的數(shù)據(jù)框,每一行代表節(jié)點(diǎn)節(jié)點(diǎn)之間的連線
> nodes<-data.frame(node=c("A","B","C","D"))
> edges<-data.frame(node1=c("A","A","A","B","B","C"),
+ node2=c("B","C","D","C","D","D"))
> nodes
node
1 A
2 B
3 C
4 D
> edges
node1 node2
1 A B
2 A C
3 A D
4 B C
5 B D
6 C D
>
library(ggraph)
library(igraph)
net<-graph_from_data_frame(d=edges,vertices = nodes,directed = F)
ggraph(net)+
geom_edge_link()+
geom_node_point()
給節(jié)點(diǎn)添加一列分組信息,給每個(gè)節(jié)點(diǎn)一個(gè)數(shù)值,用來(lái)映射節(jié)點(diǎn)大小。
nodes$Group<-c("group_1","group_1","group_2","group_2")
nodes$Size<-c(5,15,10,18)
nodes$Name<-nodes$node
給每條邊添加顏色和粗細(xì)的映射數(shù)值
edges$color<-sample(seq(0,1,by=0.01),6)
edges$width<-sample(1:100,6)
net<-graph_from_data_frame(d=edges,vertices = nodes,directed = F)
ggraph(net)+
geom_edge_link(aes(edge_width=width,edge_color=color))+
geom_node_point(aes(size=Size,color=Group))+
geom_node_text(aes(label=Name))
邊的漸變色深藍(lán)到淺藍(lán)不太好看,換!加上語(yǔ)句
scale_edge_color_continuous(low = "cyan",high = "red")
ggraph(net)+
geom_edge_link(aes(edge_width=width,edge_color=color))+
geom_node_point(aes(size=Size,color=Group))+
geom_node_text(aes(label=Name))+
scale_edge_color_continuous(low = "cyan",high = "red")
每個(gè)節(jié)點(diǎn)的點(diǎn)太小了,增大!加上語(yǔ)句
scale_size_area(max_size = 30)
ggraph(net)+
geom_edge_link(aes(edge_width=width,edge_color=color))+
geom_node_point(aes(size=Size,color=Group))+
geom_node_text(aes(label=Name))+
scale_edge_color_continuous(low = "cyan",high = "red")+
scale_size_area(max_size = 30)
點(diǎn)的圖例太大了,占了其他圖例的位置,不要他了!加上語(yǔ)句
guides(size=F)
ggraph(net)+
geom_edge_link(aes(edge_width=width,edge_color=color))+
geom_node_point(aes(size=Size,color=Group))+
geom_node_text(aes(label=Name))+
scale_edge_color_continuous(low = "cyan",high = "red")+
scale_size_area(max_size = 30)+
guides(size=F)
這里遇到一個(gè)問(wèn)題是:有沒(méi)有辦法改變圖例中點(diǎn)的大小呢?
新學(xué)到的:還可以改變圖例的前后順序,添加語(yǔ)句
guides(color=guide_legend(order=3))
ggraph(net)+
geom_edge_link(aes(edge_width=width,edge_color=color))+
geom_node_point(aes(size=Size,color=Group))+
geom_node_text(aes(label=Name))+
scale_edge_color_continuous(low = "cyan",high = "red")+
scale_size_area(max_size = 30)+
guides(size=F)+
guides(color=guide_legend(order=3))
雖然點(diǎn)大小的圖例刪掉了,但是他應(yīng)該還是站著位置呢!如果想要把顏色圖例設(shè)置為最后可能得把order設(shè)置為4。
有的節(jié)點(diǎn)超出了繪圖邊界,可以通過(guò)修改x和y軸的范圍來(lái)調(diào)整,加上命令
theme_bw()
就可以顯示出坐標(biāo)軸的范圍
ggraph(net)+
geom_edge_link(aes(edge_width=width,edge_color=color))+
geom_node_point(aes(size=Size,color=Group))+
geom_node_text(aes(label=Name))+
scale_edge_color_continuous(low = "cyan",high = "red")+
scale_size_area(max_size = 30)+
guides(size=F)+
guides(color=guide_legend(order=3))+
theme_bw()+
xlim(-0.8,0.8)+ylim(-0.8,0.8)
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。