如何解决我可以在NetworkX中为边创建布尔关系吗?
是否可以将NetworkX图形中的边线类型设置为布尔“ AND”或“ OR”?我遇到的情况是边缘类型(AND / OR)至关重要,尤其是对于路径遍历方法。 例如,如果网络具有以下优势
library(DT)
library(shiny)
ui <- fluidPage(
titlePanel(p("Spatial app",style = "color:#3474A7")),sidebarLayout(
sidebarPanel(
uiOutput("inputp1"),uiOutput("NUM"),#Add the output for new pickers
uiOutput("pickers"),actionButton("button","Update")
),mainPanel(
DTOutput("table")
)
)
)
# server()
server <- function(input,output) {
dt<-reactive({
name<-c("John","Jack","Bill")
value1<-c(2,4,6)
dt<-data.frame(name,value1)
dt$value1<-dt$value1*isolate(input$num)
dt
})
output$NUM<-renderUI({
if("value1" %in% colnames(dt())){
numericInput("num",label = ("value"),value = 1)
}
else{
return(NULL)
}
})
output$inputp1 <- renderUI({
pickerInput(
inputId = "p1",label = "Select Column headers",choices = colnames( dt()),multiple = TRUE,options = list(`actions-box` = TRUE)
)
})
observeEvent(input$p1,{
#Create the new pickers
output$pickers<-renderUI({
input$button2
div(lapply(input$p1,function(x){
if (is.numeric(dt()[[x]])) {
sliderInput(inputId=x,label=x,min=min(dt()[x]),max=max(dt()[[x]]),value=c(min(dt()[[x]]),max(dt()[[x]])))
}
else if (is.factor(dt()[[x]])) {
pickerInput(
inputId = x#The colname of selected column,label = x #The colname of selected column,choices = as.character(unique(dt()[,x]))#all rows of selected column,options = list(`actions-box` = TRUE)
)
}
}))
})
})
output_table <- reactive({
req(input$p1,sapply(input$p1,function(x) input[[x]]))
dt_part <- dt()
for (colname in input$p1) {
if (is.factor(dt_part[[colname]]) && !is.null(input[[colname]])) {
dt_part <- subset(dt_part,dt_part[[colname]] %in% input[[colname]])
} else {
if (!is.null(input[[colname]][[1]])) {
dt_part <- subset(dt_part,(dt_part[[colname]] >= input[[colname]][[1]]) & dt_part[[colname]] <= input[[colname]][[2]])
}
}
}
dt_part
})
output$table<-renderDT({
output_table()
})
}
# shinyApp()
shinyApp(ui = ui,server = server)
我想将A-> X和B-> X设置为“ OR”,并将C-> X设置为“ AND”。这样,当我删除C时,应该没有到达X的任何路径。
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。