パッケージのforceNetwork()
機能を使用して、タンパク質変異のネットワークを作成しました 。networkD3
RStudio の「ビューア」ペインにレンダリングされます。
次に、動的な性質 (ノードのクリック、接続の強調表示など) を保持したまま、これを HTML ファイルとして保存して共有できます。
私のネットワーク プロットの png バージョンは次のようになります。
これは元のデータの上位 20% を表したもので、完全なデータはさらに巨大で複雑に見えます。
この forceNetwork に検索を追加して、特定のノードを複雑なネットワーク内に配置できるようにする必要があります。これの javascript または jquery 部分は、パッケージ networkD3 のコピーを編集して再パッケージ化することで簡単に実現できます。しかし、私の主な課題は、検索ボックスを含めるための html コードを追加することです。
私のメインの R コードは次のようになります。
library(networkD3)
library(XLConnect)
wb <- loadWorkbook("input.xlsx")
nodes <- readWorksheet(wb, sheet="Node", startRow = 1, startCol = 1, header = TRUE)
links <- readWorksheet(wb, sheet="Edges", startRow = 1, startCol = 1, header = TRUE)
fn <- forceNetwork(Links = links, Nodes = nodes,
Source = "Source", Target = "ID", Value = "Combo",
NodeID = "Mutation", linkDistance = JS('function(d){return d.value * 50;}'),
Nodesize = "IF", Group = "Combo", radiusCalculation = JS("d.nodesize+6"),
zoom = T, bounded = F, legend = T,
opacity = 0.8,
fontSize = 16 )
fn
私のインスピレーションは、Simon Raperによる jsfiddleから来ました。この状況で検索を含める最良の方法は何でしょうか? 私が考えたオプションは、最初にレンダリングをhtmlとして保存することです。次に、html を読んで編集し、検索用のコードを挿入します。これにRhtmlを使用しようとしましたが、簡単ではないようです。任意のポインタをいただければ幸いです。