R의 sna 패키지로 위도·경도를 반영시킨 그래프의 묘화에 대해서
소개
R의 sna 패키지를 사용해 위도·경도를 반영시킨 그래프를 그리려 하고 있습니다만,
노드가 밀집되어 버려서 잘 쓸 수 없습니다.
만약 좋은 해결 방법을 아시는 분이 계시면 어드바이스 받을 수 있으면 다행입니다.
작성한 코드
R#snaパッケージを読み込み
library(sna)
#二部グラフのcsvファイルを読み込み
test <- read.csv("test.csv", row.names = "test")
#matrixに変換
test <- as.matrix(test)
#転置行列を乗じる。
resulttest <- test%*%t(test)
#ノードの緯度・経度のcsvファイルを読み込み
loctest <- read.csv("testgeo.csv",header = T,row.names = 1)
#「coo」と定義
coo <- loctest[,1:2]
#ノードに緯度・経度を反映させてプロットする。
gplot(resulttest,gmode = "graph",displaylabels = TRUE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo)
csv 파일 내용
・「test」의 내용은 다음과 같습니다.
・「testgeo」의 내용은 다음과 같습니다.
출력된 그래프
이런 느낌으로 잘 표시할 수 없었습니다.
추가
이런 식으로 노드의 크기와 에지의 폭을 좁히고, 노드에 라벨을 표시하는 것을 포기하면 다소 맛이 되었습니다.
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3)
추가 2
「suppress.axes = FALSE」로 축을 표시시켜, 「xlim = c(133,138), ylim = c(34,37)」로 플롯 하는 범위를 지정하면 이런 느낌이 되었습니다.
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,
suppress.axes = FALSE,xlim = c(133,138),ylim = c(34,37))
추가 3
vertex.sides를 사용하여 정점의 가장자리 수를 지정하여 정점의 모양을 변경할 수 있습니다.
(3→삼각형, 4→사각형, 50→원)
또한 vertex.col을 사용하여 색상을 변경할 수 있습니다.
다음과 같이 행렬에 대해 위에서부터 순서대로 모양과 색을 지정할 수 있습니다.
(행렬의 전부에서 19의 정점에 대해 위에서 순서대로 rep(3,4)→삼각형을 4개, rep(4,5)→사각형을 5개, rep(50,10)→원을 10개 등. 색상도 동일합니다.)
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,label.pos = 5,
coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,suppress.axes = FALSE,
xlim = c(133,138),ylim = c(34,37),
vertex.sides = c(rep(3,4),rep(4,5),rep(50,10)),
vertex.col = c(rep("blue",4),rep("red",5),rep("green",10)))
Reference
이 문제에 관하여(R의 sna 패키지로 위도·경도를 반영시킨 그래프의 묘화에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/restructure/items/29fd4867ced81ef4d397
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
R
#snaパッケージを読み込み
library(sna)
#二部グラフのcsvファイルを読み込み
test <- read.csv("test.csv", row.names = "test")
#matrixに変換
test <- as.matrix(test)
#転置行列を乗じる。
resulttest <- test%*%t(test)
#ノードの緯度・経度のcsvファイルを読み込み
loctest <- read.csv("testgeo.csv",header = T,row.names = 1)
#「coo」と定義
coo <- loctest[,1:2]
#ノードに緯度・経度を反映させてプロットする。
gplot(resulttest,gmode = "graph",displaylabels = TRUE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo)
csv 파일 내용
・「test」의 내용은 다음과 같습니다.
・「testgeo」의 내용은 다음과 같습니다.
출력된 그래프
이런 느낌으로 잘 표시할 수 없었습니다.
추가
이런 식으로 노드의 크기와 에지의 폭을 좁히고, 노드에 라벨을 표시하는 것을 포기하면 다소 맛이 되었습니다.
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3)
추가 2
「suppress.axes = FALSE」로 축을 표시시켜, 「xlim = c(133,138), ylim = c(34,37)」로 플롯 하는 범위를 지정하면 이런 느낌이 되었습니다.
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,
suppress.axes = FALSE,xlim = c(133,138),ylim = c(34,37))
추가 3
vertex.sides를 사용하여 정점의 가장자리 수를 지정하여 정점의 모양을 변경할 수 있습니다.
(3→삼각형, 4→사각형, 50→원)
또한 vertex.col을 사용하여 색상을 변경할 수 있습니다.
다음과 같이 행렬에 대해 위에서부터 순서대로 모양과 색을 지정할 수 있습니다.
(행렬의 전부에서 19의 정점에 대해 위에서 순서대로 rep(3,4)→삼각형을 4개, rep(4,5)→사각형을 5개, rep(50,10)→원을 10개 등. 색상도 동일합니다.)
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,label.pos = 5,
coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,suppress.axes = FALSE,
xlim = c(133,138),ylim = c(34,37),
vertex.sides = c(rep(3,4),rep(4,5),rep(50,10)),
vertex.col = c(rep("blue",4),rep("red",5),rep("green",10)))
Reference
이 문제에 관하여(R의 sna 패키지로 위도·경도를 반영시킨 그래프의 묘화에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/restructure/items/29fd4867ced81ef4d397
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
이런 느낌으로 잘 표시할 수 없었습니다.
추가
이런 식으로 노드의 크기와 에지의 폭을 좁히고, 노드에 라벨을 표시하는 것을 포기하면 다소 맛이 되었습니다.
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3)
추가 2
「suppress.axes = FALSE」로 축을 표시시켜, 「xlim = c(133,138), ylim = c(34,37)」로 플롯 하는 범위를 지정하면 이런 느낌이 되었습니다.
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,
suppress.axes = FALSE,xlim = c(133,138),ylim = c(34,37))
추가 3
vertex.sides를 사용하여 정점의 가장자리 수를 지정하여 정점의 모양을 변경할 수 있습니다.
(3→삼각형, 4→사각형, 50→원)
또한 vertex.col을 사용하여 색상을 변경할 수 있습니다.
다음과 같이 행렬에 대해 위에서부터 순서대로 모양과 색을 지정할 수 있습니다.
(행렬의 전부에서 19의 정점에 대해 위에서 순서대로 rep(3,4)→삼각형을 4개, rep(4,5)→사각형을 5개, rep(50,10)→원을 10개 등. 색상도 동일합니다.)
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,label.pos = 5,
coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,suppress.axes = FALSE,
xlim = c(133,138),ylim = c(34,37),
vertex.sides = c(rep(3,4),rep(4,5),rep(50,10)),
vertex.col = c(rep("blue",4),rep("red",5),rep("green",10)))
Reference
이 문제에 관하여(R의 sna 패키지로 위도·경도를 반영시킨 그래프의 묘화에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/restructure/items/29fd4867ced81ef4d397
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
gplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3)
「suppress.axes = FALSE」로 축을 표시시켜, 「xlim = c(133,138), ylim = c(34,37)」로 플롯 하는 범위를 지정하면 이런 느낌이 되었습니다.
R
gplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,
label.pos = 5,coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,
suppress.axes = FALSE,xlim = c(133,138),ylim = c(34,37))
추가 3
vertex.sides를 사용하여 정점의 가장자리 수를 지정하여 정점의 모양을 변경할 수 있습니다.
(3→삼각형, 4→사각형, 50→원)
또한 vertex.col을 사용하여 색상을 변경할 수 있습니다.
다음과 같이 행렬에 대해 위에서부터 순서대로 모양과 색을 지정할 수 있습니다.
(행렬의 전부에서 19의 정점에 대해 위에서 순서대로 rep(3,4)→삼각형을 4개, rep(4,5)→사각형을 5개, rep(50,10)→원을 10개 등. 색상도 동일합니다.)
Rgplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,label.pos = 5,
coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,suppress.axes = FALSE,
xlim = c(133,138),ylim = c(34,37),
vertex.sides = c(rep(3,4),rep(4,5),rep(50,10)),
vertex.col = c(rep("blue",4),rep("red",5),rep("green",10)))
Reference
이 문제에 관하여(R의 sna 패키지로 위도·경도를 반영시킨 그래프의 묘화에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/restructure/items/29fd4867ced81ef4d397
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
gplot(resulttest,gmode = "graph",displaylabels = FALSE,
edge.col = rgb(0.6,0.7,0.8,0.5),jitter = FALSE,label.pos = 5,
coord = coo,vertex.cex = 0.3,edge.lwd = 0.3,suppress.axes = FALSE,
xlim = c(133,138),ylim = c(34,37),
vertex.sides = c(rep(3,4),rep(4,5),rep(50,10)),
vertex.col = c(rep("blue",4),rep("red",5),rep("green",10)))
Reference
이 문제에 관하여(R의 sna 패키지로 위도·경도를 반영시킨 그래프의 묘화에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/restructure/items/29fd4867ced81ef4d397텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)