![](/img/trans.png)
[英]Why is input$tableid_all_rows (DT) working in Shiny?
[英]DT Shiny R - [input$tableId_rows_all, ] not working
我无法在绘图中显示数据表中的所有已过滤行,并且该函数(假设使用所有已过滤的行 - > input$tabelle_rows_all
仅使用当前页面上的行! 我的DT版本是0.1,我无法将其更新为github版本 。 我尝试了很多方法,首先通过devtools::install_github('rstudio/DT')
但我收到了一个错误
...--install-tests Der Befehl "C:\Program" ist entweder falsch geschrieben oder konnte nicht gefunden werden. Error: Command failed (1)
比我下载的开发版本( https://github.com/rstudio/DT/archive/master.tar.gz )和我用的命令
install.packages("C:/Users/XX/Downloads/DT-master.tar.gz",lib="C:/Users/XX/Documents/R/win-library/3.2")
。
但是我仍然有错误:
Warning in install.packages : package 'C:/Users/XX/Downloads/DT-master.tar.gz' is not available (for R version 3.2.3)
...
这是我需要DT的非常必要和重要的选项,无论如何我能完成它吗?
简单的代码示例:
library(shiny)
library(DT)
library(ggplot2)
x <- as.numeric(1:1000000)
y <- as.numeric(1:1000000)
data <- data.frame(x,y)
shinyApp(
ui = fluidPage(dataTableOutput('tableId'),
plotOutput('plot1')),
server = function(input, output) {
output$tableId = renderDataTable({
datatable(data, options = list(pageLength = 100, lengthMenu=c(100,200,300,400,500,600)))
})
output$plot1 = renderPlot({
filtered_data <- data[input$tableId_rows_all, ]
ggplot(data=filtered_data, aes(x=x,y=y)) + geom_line()
})
}
)
感谢您的任何兴趣
[再次清除它] :
我得到了相当大的数据(> 5000000行),我使用数据表( DT
)和过滤器在闪亮的应用程序中显示它。 根据用户对过滤的偏好,我们假设它给了我们550行(但它可以给我们更多或更少)。 由于分页,我无法看到所有550行(假设pageLength
为100)或者甚至更糟, 我无法在绘图中进一步显示所有已过滤的行 ,因为函数input$tabelle_rows_all
使用当前页面上的行 (我必须先更改条目号码)。 有没有办法在过滤数据表之后获取所有找到的行(不依赖于 pageLength
)?
我在某地读到问题可能是版本od DT
,所以DT
0.1不支持绘制所有找到的行的函数,所以我希望DT
的github版本是我的问题的解决方案。 但我可能错了!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.