【发布时间】:2019-11-24 01:24:54
【问题描述】:
我生成了一个连接矩阵,表示由洋流连接的地理点网络。每个点释放被其他点接收的粒子。每个点释放和接收的粒子数汇总在这个方阵中。例如矩阵的一个元素Aij对应第i个点发射和第j个点接收的粒子数量。
我的目的是能够将其绘制为一个网络,这样每个点都构成一个顶点,两点之间的连接构成一条边。我希望这些边缘根据交换的粒子数量具有不同的颜色。这些必须用箭头标记。
我可以根据地理坐标绘制这些点,并且可以按照我想要的方式绘制这些边缘。我现在唯一关心的是如何添加将边缘颜色与它们所代表的粒子数量相关联的图例。
谁能帮我解决这个问题?到目前为止,这是我的代码:
library(ggplot2)
library(plyr)
library(sp)
library(statnet)
connectivityMatrix <- as.matrix(read.table(file='settlementMatrix001920.dat'))
coordinates <- as.matrix(read.table(file='NoTakeReefs_center_LonLat.dat'))
net <- as.network(connectivityMatrix, matrix.type = "adjacency", directed = TRUE)
minX<-min(coordinates[,1])#-0.5
maxX<-max(coordinates[,1])#+0.5
minY<-min(coordinates[,2])#-0.5
maxY<-max(coordinates[,2])#+0.5
p<-plot(net, coord=coordinates,xlim=c(minX,maxX),ylim=c(minY,maxY),edge.col=connectivityMatrix,object.scale=0.01)
【问题讨论】:
-
它是基础图形,所以你可以使用
legend。 -
谢谢,我想是这样,但我不知道如何在图例中指定边缘的颜色。我对 R 很陌生,以前没有做过类似的事情。谢谢你的帮助。