Tôi có ứng dụng Sáng bóng tạo ra bảng dữ liệu, nhưng tôi không thể cố định cột đầu tiên và tiêu đề, vì vậy khó đọc được bảng khi bạn đi xuống hoặc băng qua. Có anyway để đóng băng các tấm? Tôi đã thử tìm kiếm nhưng không tìm thấy gì cả.Tiêu đề đóng băng và cột đầu tiên sử dụng dữ liệu.table trong Shiny
Trả lời
Câu hỏi thú vị và giờ đây nhờ có bản cập nhật mới nhất của Shiny to data.tables 1.10.2
, việc sử dụng các trình cắm và tiện ích khác nhau trở nên dễ dàng hơn rất nhiều. Đối với câu hỏi của bạn, tiện ích mở rộng FixedHeader có vẻ lý tưởng. Để thêm phần mở rộng này, chúng ta cần phải bao gồm những liên quan JavaScript
và CSS
tập tin (xem http://cdn.datatables.net/):
tagList(
singleton(tags$head(tags$script(src='//cdn.datatables.net/fixedheader/2.1.2/js/dataTables.fixedHeader.min.js',type='text/javascript'))),
singleton(tags$head(tags$link(href='//cdn.datatables.net/fixedheader/2.1.2/css/dataTables.fixedHeader.css',rel='stylesheet',type='text/css')))
)
data.tables
có một tùy chọn initComplete
cho phép chúng ta định gọi lại một lần bảng được vẽ, vv
function(settings, json) {
new $.fn.dataTable.FixedHeader(this, {
left: true,
right: true
});
}
Chúng tôi sẽ sử dụng phiên bản sửa đổi của tập dữ liệu iris
thêm chỉ mục và một số dữ liệu ngẫu nhiên ở cuối để hiển thị trái sang phải cuộn:
library(shiny)
myData <- cbind(list(index = row.names(iris)), iris
, rep(list(row.names(iris)), 10))
names(myData)[7:16] <- paste0("randomData", 1:10)
runApp(
list(ui = fluidPage(
tagList(
singleton(tags$head(tags$script(src='//cdn.datatables.net/fixedheader/2.1.2/js/dataTables.fixedHeader.min.js',type='text/javascript'))),
singleton(tags$head(tags$link(href='//cdn.datatables.net/fixedheader/2.1.2/css/dataTables.fixedHeader.css',rel='stylesheet',type='text/css')))
),
dataTableOutput("mytable")
)
, server = function(input, output, session){
output$mytable <- renderDataTable(myData,
options = list(
pageLength = 50,
initComplete = I("function(settings, json){
new $.fn.dataTable.FixedHeader(this, {
left: true,
right: true
});
}")
)
)
})
)
vì vậy trong hình ảnh chúng ta có thể thấy chúng tôi được cuộn xuống để ghi 8 và qua một số cách nhưng tiêu đề và cột đầu tiên (cột chỉ mục được thêm của chúng tôi) vẫn hiển thị.
hạnh phúc để giúp nếu phá được câu trả lời câu hỏi của bạn xem xét đánh dấu nó như được chấp nhận bằng cách đánh dấu nó. – jdharrison
Rất cám ơn sự giúp đỡ của bạn! Có cách nào để đóng băng tiêu đề của cột đầu tiên không, vì vậy nó có thể nhìn thấy khi tôi cuộn sang phải không? – Kamal
Sau tài liệu 'dataTables' và câu trả lời chi tiết tuyệt vời của bạn, tôi đã thử plugin' FixedColumns' trong một trong các ứng dụng sáng bóng của mình. Tôi đã bao gồm các tệp css và js 'fixedcolumns/3.0.2' cũng như các tệp tin' css và js' dataTables 1.10.4' trong tiêu đề của tôi và bao gồm 'initComplete' trong các tùy chọn của tôi với một thay đổi nhỏ như sau:' function (settings, json) { $ .fn.dataTable.FixedColumns mới (this, {}); } '. Tuy nhiên khi tôi chạy ứng dụng, bảng tiếp tục hiển thị thông báo 'đang xử lý ...' và không tải như mong đợi. Tôi hiện đang sử dụng bản phát hành sáng bóng mới nhất, 0.11. Suy nghĩ? –
FixedHeader không hoạt động, cung cấp cho tên cột sai khi x-scrolling, nhưng FixedColumns công trình. Đó là do incompatibility giữa chúng
library(shiny)
library(DT)
runApp(
list(ui = fluidPage(
dataTableOutput("mytable")
)
, server = function(input, output, session){
Rows <- c(1:50)
for (y in 1:15){
x<-y-1
assign(letters[x+1],runif(5, 0, 1))
}
x <- data.frame(Rows, mget(letters[1:15]), row.names=NULL)
x<- x[2:15]
output$mytable <- renderDataTable(
DT::datatable(x, rownames=FALSE,extensions = c('FixedColumns',"FixedHeader"),
options = list(dom = 't',
scrollX = TRUE,
paging=FALSE,
fixedHeader=TRUE,
fixedColumns = list(leftColumns = 1, rightColumns = 0))
)
)
}
)
)
- 1. WPF: Cách đóng băng tiêu đề cột trong dữ liệu
- 2. Cách gán và sử dụng tiêu đề cột trong Spark?
- 3. Sử dụng dữ liệu.table để đếm và tổng hợp một cột
- 4. JTable có nút “đóng” trong tiêu đề cột
- 5. đa lõi và dữ liệu.table trong R
- 6. Bảng tiêu đề cố định và cột đầu tiên css/html
- 7. cột cố định và tiêu đề với CSS/JS góc
- 8. Cách đóng băng đầu đề của chế độ xem lưới [gridview và chiều rộng cột không cố định]
- 9. Ngăn đóng băng trong Excel bằng C# và EPPlus
- 10. R: vòng qua các cột trong dữ liệu.table
- 11. Làm thế nào để đóng băng các tiêu đề và một tập hợp các cột bằng PHPExcel
- 12. chia dữ liệu.table
- 13. DataGridView - cách đóng băng một cột?
- 14. PHP-FPM - kết nối đầu tiên được đóng sớm trong khi đọc tiêu đề phản hồi
- 15. Khoảng trống giữa tiêu đề listview và mục đầu tiên
- 16. Chờ cho chủ đề mà không đóng băng ứng dụng
- 17. xử lý tập dữ liệu đầu vào trong R Shiny
- 18. Cách sử dụng tabPanel làm đầu vào trong R Shiny?
- 19. jQuery 1.9 - Internet Explorer 9 đóng băng sau lần đầu tiên $ ajax yêu cầu
- 20. Sử dụng không đồng bộ để ngủ trong một chủ đề không có đóng băng
- 21. transposing một dataframe duy trì cột đầu tiên là tiêu đề
- 22. Bảng HTML có thể cuộn với tiêu đề cố định và cột cố định
- 23. ESS không xử lý tốt với dữ liệu.table và knitr
- 24. Đối sánh trong nhóm bị tụt hậu trong dữ liệu.table
- 25. Sử dụng mã EF Đầu tiên và SqlCe trong WPF
- 26. Bắt đầu hoạt động từ các tiêu đề ưu tiên
- 27. Ứng dụng web Java trong tomcat định kỳ đóng băng
- 28. Tránh di chuyển của hàng đầu tiên và cột đầu tiên trong recyclerview gridlayoutmanager
- 29. Sử dụng readlines trong python? Lần đầu tiên
- 30. Nhập dữ liệu với Shiny và RStudio
Sau cập nhật Shiny gần đây, bạn có thể thử ở đây và xem những tùy chọn phân loại có sẵn https://datatables.net/upgrade/1.10-convert –