Maybe something from the igraph package will work for you. There are examples here.
DF <- data.frame(Indiv = sample(1:10, 40, replace = TRUE),
From = sample(LETTERS[1:10], 40, replace = TRUE),
To = sample(LETTERS[1:10], 40, replace = TRUE))
DF <- DF[DF$From != DF$To, ]
Tbl <- table(DF$From, DF$To)
Tbl
#>
#> A B C D E F G H I J
#> A 0 0 1 0 0 0 2 0 0 0
#> B 0 0 0 0 0 1 0 0 0 1
#> C 0 0 0 0 0 1 1 0 0 2
#> D 1 0 1 0 0 0 1 0 0 0
#> E 0 1 1 0 0 1 0 0 1 1
#> F 0 0 1 1 0 0 0 0 0 0
#> G 0 1 0 1 0 0 0 0 0 0
#> H 0 0 1 2 0 0 0 0 1 1
#> I 0 2 3 0 0 1 0 0 0 0
#> J 0 1 1 0 1 1 1 1 0 0
library(igraph)
Network <- graph_from_adjacency_matrix(Tbl , mode='directed' )
plot(Network, layout=layout.circle, main="circle")

Created on 2020-04-19 by the reprex package (v0.3.0)