R语言 用shiny和shinyapps云开发R语言网页app

标签:
社交网络图rshinyshinyappsigraph |
分类: R语言 |
@conda
rstudio推出了shiny和shinyapps,shiny可以帮助我们更快更好的开发一些app,然后shinyapps可以提供了一个免费的云服务器,供我们发布app。今天跟大家介绍一下具体怎么使用这些工具来开发app。我也只是抛砖引玉,更多技巧还需要大家积累和挖掘学习。
在之前我们也聊过如何构建一些服务器架构来发布我们的R代码,比如之前说的PHP-MySQL-Rserve方式,虽然我们现在可以使用shiny,但是我还是觉得PHP-MySQL-Rserve还是会有他的用武之地。废话不多说,我们先来看看shiny和shinyapps。
shinyapps网址:https://www.shinyapps.io
1、安装shiny包和shinyapps包
首先我们先使用以下命令安装shiny包和shinyapps包:
install.packages("shiny")
install.packages("devtools")
devtools::install_github("rstudio/shinyapps")
2、新建一个shiny项目
http://s10/mw690/001aVrkegy6PV2fZO5389&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
打开rstudio,然后新建一个项目,选择New Directory。
http://s9/mw690/001aVrkegy6PV2g40NW78&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
在项目类型这里选择shiny web application
http://s3/mw690/001aVrkegy6PV2g6ERcd2&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
然后创建一个appliction,这里我命名项目名为socialnetwork,大家可以自行命名。你也可以选择使用Git,也可以选择不使用,同样packrat你也可以自行选择,这两个点不是这里要讲的。最后点击create
project。
http://s9/mw690/001aVrkegy6PV2hCztS28&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
那么这里,我们可以看到新建的项目,这个项目里面有两个示例脚本。这里我用我自己的脚本替换了他们的脚本。codes见https://github.com/KehaoWu/SocialNetworkShinyApp。这是个github项目,虽然很简单http://www/uc/myshow/blog/misc/gif/E___6725EN00SIGG.gif用shiny和shinyapps云开发R语言网页app" TITLE="R语言
这里的codes,我们是用了igraph包来画网络图。具体codes内容不赘述了。
http://s10/mw690/001aVrkegy6PV2gbPxD19&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
如果你的shiny安装好了的话,你可以按run app按钮来预览我们的app。
http://s5/mw690/001aVrkegy6PV2gdMNec4&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
这里是预览的效果。我的设计是调好所有参数后,勾选Are you ready?前的选择框就可以画图了。下图是没有勾选的效果,没有图。
http://s1/mw690/001aVrkegy6PV2gg6Jy20&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
最后,我们需要把它发布到shinapps上去。当然你也可以自己搭建一个服务器,我们今后有机会再跟大家介绍。注册shinyapps,然后登陆,按下图,选择一个token,点击cody
to
clipboard,然后贴到rstudio命令行,运行一下。这时候我们就可以直接点击rstudio上方的publish来发布我们的app了。
http://s9/mw690/001aVrkegy6PV2gi7a078&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
下图是我发布在我shinyapps上的效果。https://kehaowu.shinyapps.io/SocialNetwork/
http://s14/mw690/001aVrkegy6PV2jJEuN5d&690用shiny和shinyapps云开发R语言网页app" TITLE="R语言
好了,就介绍到这里,还有很多需要学习的地方,希望今后大家可以做出更加有用的app。
顺便提一下,这个shinyapps国内网速不好,至少我登陆的效果不好。希望今后能有所改善,或者自己搭一个服务器。
推广:
欢迎大家访问本人业余小作品: