2017-02-21 16 views
5

मैं एक मुद्दा https://github.com/rstudio/rmarkdown/issues/967 सूचना दी और सोच रहा हूँ वहाँ एक समाधान नहीं है इस के लिए (यह कैसे काम करने के लिए)?Rmarkdown ओवरलैपिंग उत्पादन

enter image description here

नीचे

प्रतिलिपि प्रस्तुत करने योग्य उदाहरण (एन और Ngroup प्रभाव देखने के लिए अलग-अलग हो - कोई ओवरलैप जब एन = 100 और Ngroup = 10): एचटीएमएल अपने उदाहरण का उत्पादन को देखते हुए

--- 
title: "Test links to sections in DT" 
output: html_document 
--- 

```{r setup, include=FALSE} 
knitr::opts_chunk$set(echo=FALSE) 
knitr::opts_chunk$set(message=FALSE) 
knitr::opts_chunk$set(warning=FALSE) 

## DT Test 

```{r echo=FALSE} 
library(DT) 

n <- 1000 
nGroup <- 100 

testDF <- data.frame(text=paste0("Section", 1:n), 
        number=1:n, 
        group=rep(1:(n/nGroup), n/nGroup)) 

datatable(head(testDF), caption="Whole table", rownames=FALSE, escape=FALSE, options=list(paging=FALSE, info=FALSE)) 

getDT<-function(x) { 
    a <- list() 
    a[[1]] <- htmltools::tags$h3("test1") 
    a[[2]] <- datatable(x[, c("text", "number")], caption=htmltools::tags$caption(style="caption-side: top; text-align: left;", "Group: ", htmltools::strong(x$group)), rownames=FALSE, escape=FALSE, filter=c("none"), options=list(paging=FALSE, info=FALSE)) 
    a[[3]] <- htmltools::tags$h4("test1") 

    return(a) 
} 

res <- lapply(split(testDF, testDF$group), getDT) 

htmltools::tagList(res) 
``` 

उत्तर

5

, मैं

<div class="datatables html-widget html-widget-static-bound" 
    id="htmlwidget-3efe8ca4aa087193f03e" 
    style="width:960px;height:500px;"> 

नोट इनलाइन शैली है कि 500 ​​पिक्सेल के लिए ऊंचाई को स्थापित करता: div टैग कि इस तरह दिखेगा के एक झुंड को देखते हैं। हालांकि, div अंदर सामग्री 500 पिक्सेल की तुलना में काफी लंबी है, तो यह div की सीमा अतीत बह निकला है।

मुझे यकीन है कि जहां 500px से आ रहा है नहीं कर रहा हूँ, लेकिन एक समाधान के रूप में आप एक अलग शैली के साथ ओवरराइड कर सकते हैं। अगर आप अपने RMarkdown सीएसएस के साथ सुव्यवस्थित रखना पसंद करते हैं

<style type="text/css"> 
    div.datatables { height: auto !important;} 
</style> 

या, एक अलग में

div.datatables { 
    height: auto !important; 
} 

डाल: उदाहरण के लिए, अपने RMarkdown के शीर्ष (हेडर के बाद) में इस ऐड RMarkdown शीर्षक में सीएसएस फ़ाइल, और लिंक यह करने के लिए, इस तरह:

--- 
title: "Test links to sections in DT" 
output: 
    html_document: 
    css: overlap_workaround.css 
--- 
संबंधित मुद्दे