2016-07-28 11 views
0

Ich muss eine Gruppe von Kontrollkästchen mit dem CheckBoxGroupInput aus einem Datenrahmen erstellen, der dynamisch aus dem Back-End (Excel oder Datenbank) abgerufen wird. Ich kann den gewünschten Spaltenvektor aus dem Datenrahmen abrufen und zeige sie als ein ‚dynamisches‘ Drop-down mit dem folgenden Code-Schnipsel:Erstellen von dynamischen checkboxGroupInput in Shiny-Paket in R

library(shiny) 
library(ggtern) 
library(scales) 

setwd("~/R/data") 
library(XLConnect) 
df <- readWorksheetFromFile("ternary_diagram_all.xlsx",sheet=1,startRow = 1, endCol=7) 


ui <- shinyUI(fluidPage(
    wellPanel(
    titlePanel("VGLab Ternary Diagrams"), 
    selectInput('wellName', 'Select Well', unique(df$Well)) 
), 

Ich mag die einzigartigen Werte der Well Spalte für die df drehen Datenrahmen in eine Reihe von Kontrollkästchen, die auf dem Client gerendert werden. Ich habe die Dokumentation für das checkboxGroupInput nachgeschlagen, weiß aber nicht, wie ich die Liste/den Vektor zum Erstellen der Kontrollkästchen bereitstellen soll.

Bitte beraten. Ich bin ein glänzender Anfänger.

Danke.

Bharat

Antwort

0

Ich stelle mir Sie dies in der Dokumentation sehen:

checkboxGroupInput(inputId, label, choices, selected = NULL, inline = FALSE, width = NULL) 

Für die choices Parameter, c(unique(df$Well)) verwenden sollte es tun. c() erstellt einen Vektor der eindeutigen Werte in der ausgewählten "Well" -Spalte.

+1

Ja. Das funktioniert. Eigentlich habe ich die Wahl getroffen = einzigartig (df $ Well) und das hat gut funktioniert. Ich musste keinen Vektor daraus erstellen. R hat es für mich erledigt. Auf der Serverseite gibt es eine entsprechende Anweisung, um den Datenrahmen basierend auf der ausgewählten Quelle zu subsettieren, nämlich: Teilmenge (df, Well% in% input $ selectedWells). Die inputId ist = 'selectedWells' vom obigen checkboxGroupInput. – Bharat

Verwandte Themen