2016-01-14 1 views
0

У меня есть два вопроса о datatable (DT) в Shiny и до этого момента я не мог найти ответа.Выбор столбцов и дальнейшая распечатка отфильтрованных данных из datatable (DT) в Shiny

Я хотел бы, чтобы выбрать столбец вместо строки в DataTable -> я пытался (как это было написано на официальном сайте http://rstudio.github.io/DT/shiny.html):

datatable(..., selection = list(target = 'column')) 

в моем коде ::

datatable(data[, c("Datum", "Kunde", "Block.Nr.", "Toleranz", 
         "Kaliberschema")], class = 'cell-border stripe', 
       rownames=FALSE, filter="top", selection = list(target = 'column'), options = list(lengthChange = FALSE, columnDefs = list(list(width = '200px', targets = "_all"), list(bSortable = FALSE, targets = "_all"))), callback=JS(" 
      //hide column filters for two columns 
      $.each([0, 1], function(i, v) { 
      $('input.form-control').eq(v).hide()});", 
      "var tips = ['Datum von..bis', 'Kunde', 'Block.Nr.', 
      'Toleranz +', 'Kaliberschema'], 
      header = table.columns().header(); 
      for (var i = 0; i < tips.length; i++) { 
      $(header[i]).attr('title', tips[i]);}")) %>% 
     formatStyle("Datum", color = 'red', backgroundColor = 'lightyellow', fontWeight = 'bold')}) 

Этот код не работает вообще, только что получил сообщение об ошибке:

Error in match.arg(selection) : 'arg' must be NULL or a character vector 

Чем я попробовал внутри опции smthg так:

options = list(target = 'column', lengthChange = FALSE, columnDefs = list(list(width = '200px', targets = "_all")... 

Это было так же не работает ...

Кто-нибудь есть какие-либо идеи ??

2-я вещь заключается в том, что я хотел бы использовать этот выбранный столбец для построения графика линии и гистограммы с использованием ggplot.

Заранее спасибо за любые идеи

+0

На вашем 'datatable' есть много вещей. Без воспроизводимого примера трудно определить проблему. Вы пробовали комментировать «опции» и «formatStyle»? Не удалось ли выбрать столбцы, когда эти части были прокомментированы? О втором вопросе вы можете использовать 'input $ tableId_columns_selected'. – user5029763

ответ

0

Вы используете самую последнюю версию развития DT доступной из GitHub или 2015 v0.1 пакета освобождения от CRAN? Ваша ошибка указывает на последнюю; выбранные вами варианты выбора могут быть просто недоступны. Для установки из github вы можете установить пакет devtools из CRAN и продолжить через library(devtools);install_github("rstudio/DT"). Или еще лучше: спросите авторов, когда пакет станет доступен через CRAN, так как эта путаница возникла в другом месте ...

Смежные вопросы