मैं Bookdown और knitr पैकेजों का उपयोग करके एक Tufte html दस्तावेज़ में एक DT::datatable शामिल करने का प्रयास कर रहा हूं। हालांकि, भले ही मैं culomnDefs विकल्प, या kintr की चौड़ाई का उपयोग करके कॉलम की चौड़ाई निर्धारित करता हूं। fig.fullwidth = FALSE या out.with = '50%' विकल्प का उपयोग करके आउटपुट, DT::datatable अभी भी पृष्ठ की पूरी चौड़ाई, मुख्य कॉलम और मार्जिन कॉलम के साथ प्रदर्शित होता है! जैसा कि आप नीचे की छवि में देख सकते हैं, DT::datatable हिस्टोग्राम चार्ट के नीचे है, लेकिन इसे इसके ठीक बगल में मुख्य कॉलम में ही रखा जाना चाहिए।

मेरा प्रश्न सरल है, क्या आप जानते हैं कि किसी Tufte html पुस्तक के केवल मुख्य स्तंभ में DT::datatable कैसे प्रदर्शित किया जाता है? आप कोड का वह भाग देख सकते हैं जो DT::datatable उत्पन्न करता है

आपकी मदद के लिए बहुत बहुत धन्यवाद।

enter image description here

```{r high-range-cv, echo = FALSE, fig.fullwidth = FALSE}
sketch = htmltools::withTags(table(
  class = 'display',
  thead(
    tr(
      th(rowspan = 2, 'Indicator'),
      th(colspan = 2, 'Highest Variability'),
      th(colspan = 2, 'Lowest Variability')
    ),
    tr(
      lapply(rep(c('Country', 'CV'), 2), th),
      th("Diff")
    )
  )
))

diff_ind %>%
  select(ind_name, max_cty, max, min_cty, min, diff) %>%
  datatable(colnames = c("Indicator", "Country", "Max", "Country", "Min", "Diff"),
            container = sketch,
            rownames = FALSE,
            filter = 'top', 
            extensions = 'FixedColumns',
            options = list(pageLength = 6,
                           autowidth = TRUE,
                           columnDefs = list(list(width = '50px', targets = c(2, 4, 5)),
                                              list(width = '100px', targets = c(1, 3)),
                                              list(width = '300px', targets = 0)
                           ),
                           scrollX = TRUE,
                           fixedColumns = TRUE)) %>%
  formatRound(c("max", "min", "diff") , 2)
```
2
R.Andres Castaneda 25 जिंदा 2020, 23:16

1 उत्तर

सबसे बढ़िया उत्तर

जैसा कि https://github.com/rstudio/DT/issues/762 में जवाब दिया गया है , चौड़ाई तर्क का उपयोग करें DT::datatable() चाल चलेगा:

DT::datatable(iris, width = '55%', options = list(scrollX = TRUE))
3
Shrek Tan 30 जिंदा 2020, 18:02