私は光沢のあるアプリの中にnetworkD3
パッケージを使用して生成されたシンプルなサニーの図を持っています。 source
および/またはtarget
ノードはどのようにソートできますか?光沢のあるアプリ内のサンドキー図でソースノードやターゲットノードをソートするにはどうすればいいですか?
デフォルトでは、発信元ノード(A、B、C、D、E)もターゲットノード(V、W、X、Y、Z)もソートされません。少なくとも、並べ替えはわかりません。
コード:
library("shiny")
library("networkD3")
ui <- fluidPage(
column(3),
column(6, sankeyNetworkOutput("mySankeyD")),
column(3)
)
server <- function(input, output) {
output$mySankeyD <- renderSankeyNetwork({
myDf <- list(
nodes=data.frame(name=c("A", "B", "C", "D", "E",
"V", "W", "X", "Y", "Z")),
links=data.frame(source=as.integer(c(0, 1, 2, 3, 3, 4, 4)),
target=as.integer(c(7, 6, 7, 8, 7, 5, 9)),
value = c(1, 4, 1, 5, 1, 5, 3)
)
)
sankeyNetwork(Links = myDf$links, Nodes = myDf$nodes, Source = "source",
Target = "target", Value = "value", NodeID = "name",
units = "TWh", fontSize = 25, nodeWidth = 30, fontFamily = "sans-serif", iterations = 30)
})
}
shinyApp(ui, server)
どうsankeyNetwork()
は、ノードの順序を決定するのですか?アルファベット順で並べ替えることは可能ですか?
可能であればソートされたターゲットノードをソートしたいと思います。
EDIT コメントで@ emilliman5が指摘したように、手動でノードをソートすることはできません。
ノードの並べ替えを可能にするSankeyダイアグラムを生成するための他のRパッケージがありますか?はいの場合は、どうすればいいですか?
手動でノードの垂直配置を設定することはできません。 sankeyNetworkはD3.jsを呼び出し、[this post](https://stackoverflow.com/questions/18653784/d3-sankey-is-it-possible-to-affect-or-decide-the-placement-ノードの位置を設定する方法はありません... – emilliman5
Ok。コメントありがとう。 Rのようなサニー・ダイアグラムを作成するための他のツール/パッケージについて知っていますか?私はこの点について私の質問を編集します。 – jmjr
'riverplot'パッケージはこれを可能にしますが、プロットはインタラクティブではありません。 'rCharts'はちょっとした肘のグリースでもやることができるかもしれません。 – emilliman5