out.print 嵌套html代码_Shiny与HTML
本站寻求有缘人接手,详细了解请联系站长QQ1493399855
我们已经知道在Shiny app中必须存在的两个文件ui.R,server.R。他自成一派,拥有自己的“前端”,“后台”。
Shiny App的发布分为两种,但无法封装为无需server的离线web:
- 服务器托管浏览:(任何人都可以用浏览器,app的URL进行访问)需要Linux server(自己的服务器,或通过注册租服务器,例如AWS)和Shiny server(服务器程序,使Shiny app在web上可用,目前有开源文件,但可能过一阶段可能会发布商业版)
- 本地部署:需要R环境。
他有以下的特点:
- 不同程序有自己不同的URL
- 可配置,使任何用户均允许创建、部署App
- 支持非websocket浏览器,如IE9
- 免费,开源
- 为选择Linux发行版预先构建的安装程序
其中,为了更好地界面效果,shiny app支持,将ui.R更换为HTML文件,或在其文件中嵌套(调用)HTML文件。据我的理解,这是因为,shiny说白了,就是一个用R编写的网页,shiny支持的函数是将一系列的HTML封装为R的一些函数,即我们调用不同的函数,他会自动生成不同模式的HTML代码段,所以在shiny的ui.R文件中引入或者更换为HTML文件都是可以执行的。但HTML文件中,是不支持shiny功能的R代码段的插入的。
但是,如果一个java的web想要使用shiny的动态调整的展示方式,理论上是可以通过iframe进行嵌套,但是需要两台服务,一个是java的web服务,一个是shiny的服务。具体是否可行,我后续会做一些测试,再进行补充。