R glänzend DataTables ColVis Verhalten

Ich habe eine RStudio Shiny-Serverseite mit DataTables und habe TableTools und ColReorder im folgenden Beispiel zum Laufen gebracht, aber ColVis (Show/hide columns button) verhält sich nicht wie im Beispiel inhttp://datatables.net/extensions/colvis/ :

Beim Klicken auf dieShow/hide columns Wenn Sie auf die Schaltfläche klicken, wird die Liste mit den Werten in der darunter liegenden Tabelle verwechselt. Wenn Sie erneut auf die Schaltfläche oder eine andere Stelle auf der Seite klicken, wird die Liste nicht ausgeblendet (auch hier verhält sich das Beispiel auf der Seite mit den Datentabellen korrekt).

Ich bin auch verwirrt über die VerwendungsDom die verschiedenen Elemente in der Tabelle zu bestellen. Ich hätte gerne dieShow/hide columns Klicken Sie auf die Schaltfläche, um oben rechts statt oben links zu sein. Ich bin mir auch nicht sicher, wie ich die verschiedenen Elemente im bestellen sollsDom Nach dem Ändern der Reihenfolge der Spalten, Speichern in CSV / Excel oder Ausblenden einer Spalte erhalte ich das neue Tabellenlayout anstelle des ursprünglichen.

Irgendwelche Ideen?

ui.R
shinyUI(pageWithSidebar(

h1('Diamonds DataTable with TableTools'),
        tagList(
                  singleton(tags$head(tags$script(src='//cdnjs.cloudflare.com/ajax/libs/datatables/1.9.4/jquery.dataTables.min.js',type='text/javascript'))),
                  singleton(tags$head(tags$script(src='//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/js/TableTools.min.js',type='text/javascript'))),
                  singleton(tags$head(tags$script(src='//cdn.datatables.net/colreorder/1.1.1/js/dataTables.colReorder.min.js',type='text/javascript'))),
                  singleton(tags$head(tags$script(src='//cdn.datatables.net/colvis/1.1.0/js/dataTables.colVis.min.js',type='text/javascript'))),
                  singleton(tags$head(tags$script(src='//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/js/ZeroClipboard.min.js',type='text/javascript'))),
                  singleton(tags$head(tags$link(href='//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/css/TableTools.min.css',rel='stylesheet',type='text/css'))),
                  singleton(tags$script(HTML("if (window.innerHeight < 400) alert('Screen too small');")))
                ),
        dataTableOutput("mytable")
      )
)
server.R
shinyServer(function(input, output, session) {
output$mytable = renderDataTable({
          diamonds[,1:6]
      }, options = list(
               "sDom" = 'RMDCT<"clear">lfrtip',
               "oTableTools" = list(
                       "sSwfPath" = "//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/swf/copy_csv_xls.swf",
                       "aButtons" = list(
                                 "copy",
                                 "print",
                                 list("sExtends" = "collection",
                                                     "sButtonText" = "Save",
                                                     "aButtons" = c("csv","xls")
                                                )
                               )
                     )
             )
    )
})
#

Außerdem gibt es ein Problem mit der Spaltensortierung und der Neuanordnung von Spalten: Wenn Sie sortieren und dann die Spalten neu anordnen und erneut sortieren, werden die Spaltenüberschriften umgedreht. Sortieren Sie zum Beispiel nach Spaltentiefe, verschieben Sie dann Spalte eins nach links und klicken Sie dann erneut auf Überschrift, um zu sortieren. Jetzt erhalten Sie die Überschriftentiefe mit Inhalten aus der falschen Spalte. Siehe Schnappschuss:

Antworten auf die Frage(1)

Ihre Antwort auf die Frage