【问题标题】:R shiny how to make the column names vertical?R闪亮如何使列名垂直?
【发布时间】:2021-07-11 16:40:29
【问题描述】:

我有下面的代码来使用 excelR 输出 mtcars 表。我想让列名在垂直位置而不是水平位置,我该怎么做?它需要在 excelR 包中,因为用户需要更新一些信息。谢谢!

library(shiny)
library(excelR)

ui <- fluidPage(
  excelOutput("v1")
)

server <- function(input, output, session) {
  df <- reactive({mtcars})

  output$v1 = renderExcel({
    excelTable(df())
  })
}

shinyApp(ui, server)

编辑:

非常感谢 gdevaux 的以下回答,他向我展示了它可以在他的电脑上运行。但不知何故,我们无法弄清楚它在我的 Mac 或 Windows 上不起作用的问题,尝试了 safari 和 chrome,R 版本已更新并尝试从外部浏览器打开。

其他人可以运行下面的代码以查看是否有效,是否有人知道它对我不起作用的原因可能是什么?

【问题讨论】:

    标签: r shiny excelr


    【解决方案1】:

    您可以使用 CSS 来实现。 查看有关 text-orientation 属性的 CSS 文档,了解方向的各种可能性。

    library(shiny)
    library(excelR)
    
    ui <- fluidPage(
      
      # add CSS
      tags$head(
        tags$style(HTML("
        #your_table .resizable {
          writing-mode: vertical-rl;
          -webkit-text-orientation: sideways;
          text-orientation: sideways;
          }
        "))
      ),
      
      div(
        id = "your_table",
        excelOutput("v1")
      )
      
    )
    
    server <- function(input, output, session) {
      df <- reactive({mtcars})
      
      output$v1 = renderExcel({
        excelTable(df())
      })
    }
    
    shinyApp(ui, server)
    

    编辑:不在 RStudio 查看器窗格或窗口中工作,您必须使用“运行外部”

    【讨论】:

    • 我试过上面的代码但是表格的列名仍然是水平的?或者你的意思是我需要查看 CSS 文档来调整上面的代码以垂直旋转?谢谢。
    • 它们在我的浏览器中是垂直的。您是在外部浏览器中运行应用程序还是使用 Rstudio 查看器?在 Rstudio 查看器中,它无法正常工作
    • 我确实尝试在浏览器中打开。我使用的是 Mac,我尝试了 safari 和 chrome,但两者在水平方向上看起来仍然相同。
    • 我在网上找到了一个在我的 RStudio 视图和浏览器中工作的示例,但不知道如何使用 excelR 将其转换为适合我的场景,你可以看看吗?谢谢!
    • 我编辑了我的帖子,你能复制整个代码并尝试它是否有效吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-07
    • 2019-04-07
    • 1970-01-01
    • 2018-05-10
    • 1970-01-01
    • 2018-06-08
    • 2016-01-02
    相关资源
    最近更新 更多