首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    「R」第一个Shiny应用(三)使用响应式编程

    增加维护和调试成本 在传统 R 编程中,我们使用两个技术处理重复代码: 使用变量保存值 使用函数保存计算 但是它们都无法处理此处的代码重复问题,我们需要引入新的技术:响应式编程。...包裹的代码块,可以将结果赋值给一个变量,然后我们可以像使用函数一样 使用这个变量。它的一个重要特点是除了第一次运行,之后它只会在值更新时才运行(有变化,才响应进行改变)。...我们会在以后更加详细地介绍它,现在而言,我们已经构建了一个不错的简单 Shiny 应用。 下面代码的运行结果与之前的文章类似,但更有效率。...library(shiny) ui = fluidPage( selectInput("dataset", label = "Dataset", choices = ls...小抄(百度云): 链接:https://pan.baidu.com/s/19i-XuMrs70x7Tin_r89ZkA 提取码:yfuf

    1.1K20

    跟我一起玩转shiny

    我们生信技能树已经有多位大神发表了自己的网页工具,其中基于R语言的shiny框架是比较适合初学者的,而且手把手的教程不少: 把你的shiny网页工具部署在云服务器 手把手教你使用shiny创建一个网页工具...但是R语言的shiny框架能让你在起步的时候突破网页工具的开发技术限制,简单的几句R代码,一个活灵活现的网页工具就出现在你眼前。...和output 保持正确的要点 渲染和输出 session的解释 ID的用法 根据数据更新UI 表格-方案选择 表格-renderTable 表格-kableExtra 表格-DT 绘图-基本图形 绘图...-ggplot2 绘图-交互图plotly 绘图-交互图echarts 用户上传数据 用户下载数据-图表 用户下载数据-程序产生的文件 网页表格收集数据 调试-控制台 调试-shinyjs-runcodeUI...R包,它允许用户创建交互式的Shiny APP来 可视化单细胞数据:https://doi.org/10.1093/bioinformatics/btab209 ?

    2.2K21

    Nucleic Acids Research 在线发表癌症miRNA组学数据库CancerMIRNome

    关于Shiny app开发 是否要选择使用Shiny开发数据库/网页工具 我自己只会用Shiny,看到其他人用更“高端”的工具开发数据库也会着实羡慕一下。尤其是UI,简直太好看了。...个人理解Shiny的确有一些缺陷,比如网页设计不够灵活、有些功能无法实现、时间长了会掉线等等,我也注意到目前有很多新的R包被开发出来用于解决这些问题。整体来看应该会越来越好。...抛开这些不足,Shiny可能是最容易上手的工具且跟R语言无缝连接 (只是说“可能”,因为其他工具我也不了解),再多花些时间学习一下也能做出很专业漂亮的页面。...另外有很多针对advanced Shiny app开发的R包可以直接拿来学习和使用。...表格-DT 绘图-基本图形 绘图-ggplot2 绘图-交互图plotly 绘图-交互图echarts 用户上传数据 用户下载数据-图表 用户下载数据-程序产生的文件 网页表格收集数据 调试-控制台

    2.1K21

    R︱shiny实现交互式界面布置与搭建(案例讲解+学习笔记)

    (远程) 2) 只要安装一次, 可以多人使用, 可以让别人试用。(多用户) 3) 不用担心软件或者代码泄密, 可以控制用户使用时间和权限。...ui.R+server.R,很少会提到global.R,笔者在自己实践的时候遇到的了global.R的使用问题,网上教程只能自己参悟了。...Shiny提供一些缓存优化的机制, 其中最有效的是Reactive Expression 反冲表达式。 Reactive机制使得交互渲染的效率大幅度提高。...举个例子, server.R返回一个数据绘图, 但是每次运行需要重新读取数据。 但是当如果输入没有变化的时候, 这种重复的数据读取会极大的延迟反应, 浪费资源。...一般可以有两种部署, 一种是自己搭建一个Shiny Server。 这样就可以同时使用很多的Shiny 应用了。

    9.9K20

    「R」Shiny 教程笔记

    p4:分享 Shiny 将所有脚本和材料保存到一个目录,目录下代码通常以以下 2 种方式之一存储: app.R ui.R & server.R ? ? ?...p10:使用 reactive 表达式模块化 Shiny 回顾上一部分的学习中,当多处使用同一随机数据时,不同地方的数据将变得不一致。...p11:使用 isolate() 隔离响应表达式 如何在不更新图的情况下更新标题呢?这就需要使用 isolate() 了。 isolate() 创建一个非响应对象(看作 R 常规值)。...(注意这里虽然图更新了,但绘图数据并没有更新) ?...p12:使用 observeEvent 进行事件触发 有时候我们需要做一些按按钮才进行分析或者绘图的触发操作,在前端我们可以使用 actionButton,在服务端我们需要使用 observeEvent

    8.4K51

    【最终章】R语言从入门到精通Day18:Shiny高级可视化

    在本系列「R语言从入门到精通」前面的所有章节中,科研猫带领大家熟悉了R语言中的数据分析和绘图技巧。相信这些已经足够让大家在平时的学习工作中游刃有余吧。...换句话说,使用shiny包能让你的数据分析结果“表达能力”更强。...(脚本app.R也可以拆分成ui和server function两个脚本,但是最新版本的shiny包不推荐这种拆分得写法。)...了解了参数在ui和server function两端的传递过程之后,我们就可以按照R语言一般的原理将数据和参数传递给绘图函数,然后将图形显示在ui上了。...shiny包借鉴了很多编写网页的思想和方法,从而实现了网页应用和R语言的“双剑合璧”,同时它也能和Markdown包、CSS、JavaScript等方法联合使用,是一种非常优秀的数据可视化方法,希望能成为大家日后数据可视化的新工具

    5.5K32

    「R」Rmarkdown与Shiny

    |Car | 15| 0.3| | 2|Plane | 25| 0.1| | 3|Motocycle | 14| 0.2| 还有其他一些扩展包可以渲染表格...一般的图非常简单,和平常写R代码一样,不过不在.R中写,而是在.Rmd中写,将你的代码写入如下的代码框中,使用Control+Alt+i可以直接插入一个代码框。...除了基本的绘图函数与ggplot2包,我们还可以使用其他,例如DiagrammeR包绘制流程图等。...一个shiny应用程序基本由两个重要部分组成:一个是Web浏览器交互的HTTP服务器,另一个是HTTP服务器交互的R会话。...下面我们写一个最小的shiny应用程序,写一个R脚本定义它的用户界面和服务器逻辑,用户界面是一个boostrapPage,它包含一个numericInput用于接收一个整数表示样本容量,一个textOutput

    4.6K30

    基于R语言的shiny网页工具开发基础系列-07

    作为R脚本分享 任何使用R的人都可运行你的shiny app,他们需要你的app.R的一个副本,还有其他支持材料(比如www文件夹或者帮助脚本) 发送你的文件到另一个用户,email或者github等...要使用GitHub,您需要注册(免费)并选择一个用户名。 要通过GitHub共享应用,请在GitHub上创建项目存储库。然后将您的app.R文件以及该应用程序使用的所有补充文件存储在存储库中。...您无需注册GitHub帐户即可使用此服务。即使您拥有GitHub帐户,gist也是共享Shiny项目的一种简单快捷的方法。 操作方法: 将您的app.R文件复制并粘贴到gist网页。...他们要求您的用户在计算机上安装R和Shiny。 但是,Shiny创造了绝佳的机会,可以与没有R(也无意安装它)的人们共享输出。您的Shiny应用恰好是世界上使用最广泛的通信工具之一:网页。...在一个方便的位置共享Shiny应用程序,R Markdown报告,仪表板,绘图,Jupyter Notebook等。

    3.5K20

    🤔 drawCell | 不会画细胞结构图就用这个R包吧~ Super Nice!~

    1写在前面 我们在paper中经常需要画到细胞结构图,新手ppt一点一点画,高手可能会用AI手搓,土豪直接使用BioRender。...今天给大家大家分享一个代码画细胞结构图的R包,如果你觉得自己不会写代码,不想看了,那你就错过了哦。 这个R包还开发了shiny,实现交互,鼠标点点就可以完成。...交互式绘图 3.1 开启Shiny 现在做Shinyapp的越来越多了,方便大家的使用。...---- ---- 4代码实现绘图 4.1 示例一 我们试着标记人类细胞的内质网,线粒体和高尔基体吧。 颜色的话大家可以去各种取色网站获取,挑选你自己的心头好。...subcell ---- 2️⃣ http://current.geneontology.org/ontology/external2go/uniprotkb_sl2go ---- 最后祝大家早日不卷

    90820

    基于R语言的shiny网页工具开发基础系列-04

    告诉shiny如何在server函数构建对象,该对象会在它的代码构建一个小工具的值的时候反应 第一步:加一个R对象到UI shiny提供了一个函数家族,将R对象转换成在UI中的输出,每个函数创建特定类型的输出...,包含所有用来更新app中R对象的代码,每个R对象在list中要有自己的条目(名字) 在server函数中,可以通过在output定义一个新元素来创建条目,如下,元素名字应该与ui中反应元素使用的参数一致...这些函数捕捉R表达式,并进行一些渲染预处理,每个render*函数对应特定类型的反应对象,如下表 每个render *函数都有一个参数:一个用大括号{}括起来的R表达式。...因此,表达式应该返回你期望的对象(文本,图,数据框等),当表达式不返回对象或错误的对西那个类型时会报错 使用小工具(widget)的值 当用上面的代码构建app后,会发现app长这样 文本不会对小工具作出反应...) 回顾 构建了第一个有灵魂的(能反应的)app 在server中使用render*函数告诉Shiny如何构筑你的对象 在每个render*函数中,用{}抱住R表达式 将render* 表达式的结果保存到

    8.3K10

    69-R可视化12-用easylabel轻松手动添加标记

    基于shiny 的easylabel 包或许是你的选择。 这里我以火山图为例。...这里因为以火山图为例,先使用火山图绘图函数easyVolcano :需要注意这里的数据框的行名需要是基因名 # 开始之前修改一下数据框 DEG$new_P <- -log10(DEG$P_value)...中交互添加了: 在shiny 界面,你还可以对标签的位置进行个性化设置: 此外,除了在图上标记,还有一个非常有意思的筛选框,你可以通过输入基因名的方式标记: 还有一个非常简单的shiny 数据模块...个人觉得,如果这个包可以直接给出绘图代码就好了,或者直接操作ggplot 对象,毕竟我对这种封装的美观体验,还是有要求的,你怎么知道你的绘图代码就能让我满意呢?...不过话说回来,这个包的一些绘图细节,比如火山图,还蛮值得学习的: 比如这个的小操作,还是蛮对我胃口的: 参考资料 [1]easylabel (r-project.org): https://cran.r-project.org

    1.1K20
    领券