我们创建了sankey图表,通过R中的<?php
显示不同城市之间的流量。
我们已收到客户要求,在sankey节点的工具提示/悬停时显示与城市对应的“州”名称。
在下面的代码中,我们希望在节点
的工具提示(悬停)上显示状态值networkD3::sankeyNetwork()
由于 library(shiny)
library(networkD3)
library(shinydashboard)
value <- c(12,21,41,12,81)
source <- c(4,1,5,2,1)
target <- c(0,0,1,3,3)
edges2 <- data.frame(cbind(value,source,target))
names(edges2) <- c("value","source","target")
indx <- c(0,1,2,3,4,5)
ID <- c('CITY1','CITY2','CITY3','CITY4','CITY5','CITY6')
State <- c( 'IL','CA','FL','NW','GL','TX')
nodes <-data.frame(cbind(ID,indx,State))
ui <- dashboardPage(
dashboardHeader(
),
dashboardSidebar(disable = TRUE),
dashboardBody(
fluidPage(
sankeyNetworkOutput("simple")
)
)
)
server <- function(input, output,session) {
output$simple <- renderSankeyNetwork({
sankeyNetwork(Links = edges2, Nodes = nodes,
Source = "source", Target = "target",
Value = "value", NodeID = "ID"
,units = " " )
})
}
shinyApp(ui = ui, server = server)
包未提供自定义工具提示功能,请在networkD3
中建议如何通过javascript或其他方式实现。
答案 0 :(得分:3)
您可以使用与此Stack Overflow answer类似的技术。保存<div *ngIf="htmlSegment == 'a"
[@heroState]="a">
{{someMessage}}
</div>
<div *ngIf="htmlSegment == 'b"
[@heroState]="b" >
{{someMessage}}
</div>
函数的输出,然后添加回被剥离的数据,然后使用sankeyNetwork
添加一些JavaScript来修改节点的工具提示文本......
htmlwidgets::onRender