gpt4 book ai didi

R visNetwork : Multiple graph layout?

转载 作者:行者123 更新时间:2023-12-04 11:40:30 30 4
gpt4 key购买 nike

我想并排放置两个 visNetwork 图以进行视觉比较。使用带有 par() 或 layout() 的 igraph 可以进行多图定位。有没有办法为 visNetwork 做到这一点?解决方法/问题(包括 RShiny 等)是可以接受的答案 - 提供并排 visNetwork 显示的任何方法。请注意,ID 号等重叠,因此将两个网络放入同一个图中将需要大量数据操作,而我希望避免这种操作。

这是我正在尝试做的事情的示例。

library(visNetwork)

# Network 1
nodes1 <- data.frame(id = 1:3)
edges1 <- data.frame(from = c(1,1), to = c(2,3))

# Network 2
nodes2 <- data.frame(id = 1:4)
edges2 <- data.frame(from = c(1,1,2,2), to = c(2,3,4,3))

# Plot both networks side-by-side?
par(mfrow=c(1,2)) # Want something like this (does not work)
visNetwork(nodes1, edges1) %>% visEdges(arrows = 'from')
visNetwork(nodes2, edges2) %>% visEdges(arrows = 'from')

干杯,蒂姆

最佳答案

如果给予完全的自由,我会选择 flexdashboard。这是一个方便的 rmarkdown 模板,用于创建交互式仪表板,从简单快速的仪表板到精心设计的复杂仪表板。

install.packages('flexdashboard')

然后从模板 'Flex Dashboard' 创建一个新的 Rmd,或者将以下内容复制到一个新的 .Rmd 文件中

---
title: "DASHBOARD"
output:
flexdashboard::flex_dashboard:
orientation: rows
---

```{r, echo=FALSE}
library(visNetwork)

# Network 1
nodes1 <- data.frame(id = 1:3)
edges1 <- data.frame(from = c(1,1), to = c(2,3))

# Network 2
nodes2 <- data.frame(id = 1:4)
edges2 <- data.frame(from = c(1,1,2,2), to = c(2,3,4,3))

```

Row
-------------------------------------

### Chart 1

```{r}
visNetwork(nodes1, edges1) %>% visEdges(arrows = 'from')
```


### Chart 2

```{r}
visNetwork(nodes2, edges2) %>% visEdges(arrows = 'from')
```

请注意,由于布局是响应式的,Rstudio 查看器 Pane 中的默认 View 垂直堆叠图表,但扩展 Pane 或在外部浏览器中打开它会并排显示它们。

enter image description here

关于R visNetwork : Multiple graph layout?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43519451/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com