首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R- Riverplot软件包使用- Sankey图

R- Riverplot软件包使用- Sankey图
EN

Stack Overflow用户
提问于 2014-07-25 19:18:18
回答 1查看 2.6K关注 0票数 2

我试着在一月份之前用riverplot package绘制一个桑基图表。然而,我的案例相当复杂,我还没有找到修复我的图表的方法,所以我发布了这个问题,希望这能帮助我找到一些问题的答案或改进包的方法。

我的图表如下。正如您在第一张图像中看到的图表所示,节点的状态相互重叠且不可读。是否可以在图表的一侧显示节点名称,每个节点名称将紧挨着它所代表的车道。这些想法显示在下面的第二张图片中,其中我们有多个车道,然后状态应该在一边,以解释车道的含义。

非常感谢!

我的案例很难生成示例,但我通过一些修改重用了包含在riverplot包中的一月示例。就是这里

代码语言:javascript
复制
library(riverplot)
temp <- function () {
ret <- list(nodes = 
                data.frame(ID = LETTERS[1:8], x = c(1,2, 2, 3, 3, 4, 5, 1), 
                           labels = c(NA, NA, "Node C Node C Node C", rep(NA, 4), "Node H Node H Node H"), 
                           stringsAsFactors = FALSE), 
            styles = list(A = list(col = "#00990099",
                                   lty = 0, textcol = "white"), 
                          H = list(col = "#FF000099", textcol = "white"), 
                          B = list(col = "#00006699", textcol = "white"),                                                                                                                                                                           F = list(col = "yellow"), D = list(col = "#00FF0099")))
ret$edges <- data.frame(N1 = c("A", "A", "A", "H", "H", "H", 
                               "B", "B", "C", "C", "C"), N2 = 
                            c("B", "C", "D", "D", "F", "G", "D", "F", "D", "E", "F"), 
                        Value = c(10, 20, 5, 10, 10, 20, 5, 10, 20, 15, 10), stringsAsFactors = F)
rownames(ret$nodes) <- ret$nodes$ID
class(ret) <- c(class(ret), "riverplot")
return(ret)
} 
x <- temp(x) 
plot(x)
EN

回答 1

Stack Overflow用户

发布于 2015-04-25 21:58:44

riverplot加上更短的标签的srt参数是答案吗?

代码语言:javascript
复制
ret <- list(nodes = 
              data.frame(ID = LETTERS[1:8], x = c(1,2, 2, 3, 3, 4, 5, 1), 
    #                     labels = c(NA, NA, "Node C Node C Node C", rep(NA, 4), "Node H Node H Node H"), 
            labels = c(NA, NA, "Node C", rep(NA, 4), "Node H"), 
                         stringsAsFactors = FALSE), 
            styles = list(A = list(col = "#00990099",
                                   lty = 0, textcol = "white"), 
                          H = list(col = "#FF000099", textcol = "white"), 
                          B = list(col = "#00006699", textcol = "white")))                                                                                                                                                                           F = list(col = "yellow"), D = list(col = "#00FF0099")))
ret$edges <- data.frame(N1 = c("A", "A", "A", "H", "H", "H", 
                               "B", "B", "C", "C", "C"), N2 = 
                          c("B", "C", "D", "D", "F", "G", "D", "F", "D", "E", "F"), 
                        Value = c(10, 20, 5, 10, 10, 20, 5, 10, 20, 15, 10), stringsAsFactors = F)
rownames(ret$nodes) <- ret$nodes$ID
class(ret) <- c(class(ret), "riverplot")

riverplot(ret, srt = 0)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24954562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档