1
Я пытаюсь построить график с R и igraph, используя сочетание форм и растровых изображений для вершин. Я изменил пример igraph ниже, чтобы воспроизвести мою проблему. Кто-нибудь может понять, что не так? Для проверки скрипта вам понадобится файл png.R igraph, как рисовать вершины со смешением форм и растра?
library(png)
library(igraph)
img.1 <- readPNG(system.file("img", "Rlogo.png", package="png"))
shapes <- setdiff(shapes(), "")
g <- make_ring(length(shapes))
V(g)$shape <- shapes
#change the rectangle variants to raster
V(g)$shape[grepl("rect",V(g)$shape)] <- "raster"
#give every vertex the same image, regardless of shape
V(g)$raster <- replicate(vcount(g), img.1, simplify=FALSE)
plot(g,
vertex.size=15, vertex.size2=15,
vertex.pie=lapply(shapes, function(x) if (x=="pie") 2:6 else 0),
vertex.pie.color=list(heat.colors(5)))
Это прекрасно работает. Есть ли способ настроить функцию так, чтобы не квадратные изображения сохраняли соотношение сторон при изменении размера? – skellpco
@skellpco; что связано с установкой аргумента 'vertex.size2': уменьшите или увеличьте размер' vertex.size', чтобы растянуть фигуры (в нужном вам направлении. см. '? igraph.plotting' – user20650