「R shiny基础」增加一些小控件

作者: xuzhougeng | 来源:发表于2019-01-28 17:05 被阅读74次

在学完基础的网页布局后,我们就可以学学如何在网页中加一些控件,让网页显得可以交互(要想真的能够交互,还得学下一节的内容)。

那什么叫做控件呢?所谓的控件就是用户能够与其互动的网页元素。Shiny自带的一些控制插件如下:

函数 插件功能
actionButton 操作按钮
checkboxGroupInput 一组复选框
checkboxInput 单个复选框
dateInput 单个日期选择
dateRangeInput 一组日期选择
fileInput 文件上传A file upload control wizard
helpText 可添加到输入窗体的帮助文本
numericInput 数字输入
radioButtons 单选按钮
selectInput 一个可供选择的框
sliderInput 滑动条
submitButton 提交按钮
textInput 输入文本的字段

具体这些函数在网页展示是什么效果呢? 其实Shiny也想到了,所以给了一个控件全景图

展览

增加控件

让我们继续从一个非常j简单的布局开始,尝试添加几个控件。

ui <- fluidPage(
  
  titlePanel("Hello Widgets"),
  
  sidebarLayout(
    sidebarPanel(),
    mainPanel()
  )
)

以文本输入控件textInput为例,

textInput(inputId, label, value = "", width = NULL,
  placeholder = NULL)

前两个参数分别是该控件的唯一ID和在网页中显示的名字,所有控件的前两个都是这两个参数。第一个参数在所有插件中必须唯一,后续的数据交互时shiny需要根据这个ID获取输入信息。

加入该控件的代码如下

ui <- fluidPage(
  
  titlePanel("Hello Widgets"),
  
  sidebarLayout(
    sidebarPanel(
     h1("Please input your name"),
     textInput("input1", label = "", value = "",
               placeholder = "your name")
      
    ),
    mainPanel(
      h1("Showing results")
    )
  )
)

输入对应的是HTML中的<input>元素,里面的属性type="text"表明它的输入数据是文本。

检查元素

练习

这部分的内容主要是了解,在后续需要时挑选对应的工具,如下 是练习题

练习题

如下是我写的代码

library(shiny)

ui <- fluidPage(
  
  titlePanel("censusVis"),
  
  sidebarLayout(
    sidebarPanel(
      helpText("Create demographic maps with information from the 2010 US census"),
      selectInput("checkBox1", 
                         label = "choose a variable to display",
                         choices = list("A"=1,
                                        "B"=2)
                         ),
      sliderInput("sliderInput", 
                  label = "Range of interest",
                  min = 0, max=100, value = c(0,100), step=10)
      
    ),
    mainPanel(
    )
  )
)

server <- function(input, output){
}


shinyApp(ui = ui, server = server)

那么如何根据输入调整输出呢?这就是下一节的内容了

参考资料

传送门

Shiny基础教程:

相关文章

  • 「R shiny基础」增加一些小控件

    在学完基础的网页布局后,我们就可以学学如何在网页中加一些控件,让网页显得可以交互(要想真的能够交互,还得学下一节的...

  • 「R shiny基础」交互式入门

    上一节的「R shiny基础」增加一些小控件放在网页中的控件只能说是装饰品,要想真正让用户通过选择不同参数来得到不...

  • 「R shiny 基础」初识Shiny

    传送门 Shiny基础教程: 「R shiny 基础」初识Shiny 「R shiny 基础」如何进行网页布局 「...

  • 「R shiny 基础」如何进行网页布局

    在第一篇「R shiny 基础」初识Shiny ,我们了解了Shiny应用主要分为两个部分,UI对象和server...

  • Shiny 教程1

    简介shiny 什么是shiny: Shiny 是一个开源的 R 包,它为使用 R 构建 Web 应用提供了一个优...

  • 「r<-Shiny」用户界面(一)输入控件

    用户界面之输入 再次提醒读者,该系列的内容源自 Hadley 编写的《Mastering Shiny》喔。中文由我...

  • R Shiny 基础. 2 reactivity

    Shiny是一个网页端app,所以得同时满足多个用户的独立操作。不能因为小A修改了输入导致小B想要看的结果出现了错...

  • 「r<-Shiny」第一个Shiny应用(一) hello wo

    Shiny 是一个开源的 R 包,它为使用 R 构建 Web 应用提供了一个优雅有力的 Web 框架。Shiny ...

  • shiny-初识

    shiny 初识 shiny是一个R包,能够以网页交互式显示图表。需要两个文件ui.R,server.R。其中ui...

  • shiny学习(一)

    Shiny是一个R软件包,可很方便的从R直接构建交互式Web应用程序。 首先是安装Shiny软件包 Shiny有1...

网友评论

    本文标题:「R shiny基础」增加一些小控件

    本文链接:https://www.haomeiwen.com/subject/koggjqtx.html