R:Shiny:如何将 gvisTable 对齐到 shinyapp 的中心

R: Shiny: How to align a gvisTable to the center in shinyapp

在 Google 上查看闪亮的组:

https://groups.google.com/forum/#!topic/shiny-discuss/J8C2CnFOTOM

我找到了解决方案,但我只知道 HTML 的基础知识和一点点 CSS。我如何在我的代码中实施解决方案?

我需要将 gvisTable 放在中间。我将代码直接放入 htmlOutput 函数,作为参数但出现错误:

**注意:这是我对代码所做的唯一更改。

 tabPanel('Ikasa Adwords MotionChart',
                   br(),
                   htmlOutput("resumen",
                              tags$style(type="text/css",
                                         HTML("#summary>div { margin: 0 auto; }")
                              )),
                   br(),
                   br(),

错误:

ERROR: argument is not interpretable as logical

原文ui.R:

library(shiny)
library(googleVis)
# Rely on the 'WorldPhones' dataset in the datasets
# package (which generally comes preloaded).


# Define the overall UI
shinyUI(

  # Use a fluid Bootstrap layout
  fluidPage(    

    # Give the page a title
    br(),
    br(),
    br(),
    titlePanel("Ikasa Adwords"),

    # Generate a row with a sidebar
    br(),
    br(),
    sidebarLayout(      

      # Define the sidebar with one input



      sidebarPanel(
        dateRangeInput("dates", label = h3("Date range"),
                       start = "2015-01-01", end = "2015-02-15")

      ),



      mainPanel(
        tabsetPanel(

          tabPanel('Ika MotionChart',
                   br(),
                   htmlOutput("resumen",
                              tags$style(type="text/css",
                                         HTML("#summary>div { margin: 0 auto; }")
                              )),
                   br(),
                   br(),

                   htmlOutput("motionchart")

        )

      )
    )
  )))

您可以尝试使用 tag$style.

直接在 table 上设置 css

例如:

tabPanel('Ika MotionChart',
                   br(),
                   htmlOutput("resumen"),
                   tags$style(HTML("#resumen table{ 
                                  margin: auto;
                                   }")),
                   br(),
                   br(),

                   htmlOutput("motionchart")
                   tags$script(HTML("
                        var p = document.getElementById('motionchart')
                        $(p).attr('align', 'center');"))

          ) 

css 将具有 resumen id 的所有 table 元素的左右边距设置为 autotable 周围的左右边距应平分,从而使 table.

居中

对于 motionChart,实际图表是一个 embed 元素,因此您可以通过使用 javascript.[=22= 设置 align 属性来更改对齐方式]

在 chrome 中,通过一些 WorldPhone 数据,我得到了这个: