首页 > 解决方案 > r markdown 中的表在闪亮的应用程序中未正确打印

问题描述

使用这个答案作为指导,我已经能够在 R Markdown 中非常轻松地制作自定义文本表。这是一个示例 r markdown 文档(另存为“test_rmd.Rmd”):

---
title: "Test"
output: html_document
theme: "yeti"

---

| Test 1 | Test 2 | Test 3 |
|--------|--------|--------|
| x      | x      | x      |
| x      | x      | x      |
| x      | x      | x      |
| x      | x      | x      |

当我在 RStudio 中编织文档时,它看起来像这样:

在此处输入图像描述

然而,当我在我的 Shiny 应用程序中包含这个 R Markdown 文件时,它呈现的表格完全不同。以下是 ui.R 和 server.R 脚本以及生成的应用程序:

ui.R:

library(shiny); library(shinythemes)
shinyUI(
  bootstrapPage('', 
            navbarPage(
              title = "Test", 
              theme = shinytheme("yeti"), 

              tabPanel("Example", 
                       fluidPage(
                         div(id = "about", 
                             class = "card",  
                             includeMarkdown("./test_rmd.Rmd"))
                         )
                       )
              )
            )
  )

服务器.R:

shinyServer(function(input, output, session) {})

runApp()

在此处输入图像描述

我尝试过使用kable和其他各种“手动”在 R 中创建表的方法,但我遇到了同样的问题。我还没有探索在 r markdown 中创建data.frame和打印它,因为我正在制作的表格都是文本,并且在data.frame.

有任何想法吗?我在这里想念什么?

编辑: 好吧,要进行更新-我必须“重新绘制” CSS 中的特定表格来覆盖它。仍然不确定 Shiny 如何/为什么/在哪里覆盖默认的 R Markdown 表格格式。

标签: rshinyr-markdown

解决方案


以下代码对我有用。这是参考

<style>
.basic-styling td,
.basic-styling th {
  border: 1px solid #999;
  padding: 0.5rem;
}
</style>

<div class="ox-hugo-table basic-styling">
<div></div>
<div class="table-caption">
  <span class="table-number"></span>
</div>

| Test 1 | Test 2 | Test 3 |
|--------|--------|--------|
| x      | x      | x      |
| x      | x      | x      |
| x      | x      | x      |
| x      | x      | x      |

</div>

推荐阅读