sh.paths.mat <- shortest.paths(g.plus)
show.neighbors <- function(g,vs,L=1){
tmp <- (sh.paths.mat[vs,] <= L)
if(length(vs)>1){
neighbors <- sign(apply(tmp,2,sum))
}else{
neighbors <- sign(tmp)
}
tmp.g <- induced.subgraph(g,which(neighbors==1))
plot(tmp.g,vertex.label=V(tmp.g)$name,vertex.size=3,edge.arrow.mode=0)
}
show.neighbors(g.plus,c("ベクトル空間"),L=1)
show.neighbors.series <- function(g.plus,vs,Ls=0:4){
par(ask=TRUE)
for(i in Ls){
show.neighbors(g.plus,vs,L=i)
}
par(ask=FALSE)
}
two <- c("複体","直積")
sh.paths <- get.shortest.paths(g.plus,two[1],two[2])
show.neighbors.series(g.plus,unlist(sh.paths),Ls=0:7)