vage mysql_R基础学习(三)-- 简单练习(shiny+mysql+barplot)
测试环境:win10+RStudio
提前准备:
install.packages('shiny')
install.packages('RMySQL')
数据表准备:
最终实现的界面效果如下:点击【Click Me】按钮,从数据库读出数据,并在界面画出条形图
正式开始!
在R项目(比如ShinyDemo)的目录下新建一个文件夹barplotDemo
然后在这个目录下新建两个文件,ui.R和server.R
ui.R的代码实现如下
library(shiny)#Use a fluid Bootstrap layout
fluidPage(#Give the page a title
titlePanel("A Simple Shiny Demo"),#Generate a row with a sidebar
sidebarLayout(#Define the sidebar with one input
sidebarPanel(
actionButton("do", "Click Me")
),#Create a spot for the barplot
mainPanel(
plotOutput("dataPlot")
)
)
)
server.R的代码如下:
library(RMySQL)#Define a server for the Shiny app
function(input, output) {
observeEvent(input$do, {
# connect the database
conn
users= dbGetQuery(conn, "SELECT * FROM tb_user")
dbDisconnect(conn)
output$dataPlot
vAge
vName
height
names(height)
barplot(height)
})
})
}
备注:
(1)observeEvent(input$do, { }) 是按钮监听处理
(2)barplot的【height】要么是向量要么是矩阵,而users是list,所以需要进行处理,可以在Console查看数据类型
> is.vector(users)
[1] FALSE> is.array(users)
[1] FALSE>mode(users)
[1] "list"
> vAgemode(vAge)
[1] "numeric"
>vAge
[1] 20 26 29 49 39 53 48
> vNamemode(vName)
[1] "character"
>vName
[1] "Tom" "Jack" "Mary" "Merry" "Jerry" "Jucy" "Lucy"
上面两个R文件写好代码之后,在Console执行,记得在文件夹名字两侧加引号
> runApp('barplotDemo')
运行成功后,可以看到效果如下:
点击【Click Me】,可以看到条形图
到此结束~
vage mysql_R基础学习(三)-- 简单练习(shiny+mysql+barplot)相关推荐
- 大数据基础学习三:Ubuntu下安装VMware Tools超详细步骤及需要注意的问题(以ubuntu-18.04.3、Mware Workstation 15.1.0 Pro为例)
大数据基础学习三:Ubuntu下安装VMware Tools超详细步骤及需要注意的问题 (以ubuntu-18.04.3.Mware Workstation 15.1.0 Pro for Window ...
- PR基础学习(三) 载入编辑素材
鼠标点击项目面板里面任一视频,并按住不放,将其拖动到时间轴面板 时间轴面板说明 时间轴面板是音视频编辑处理的工作中心,其会生成一个对应的序列(Sequence),用于记录所做的编辑与修改和其他一些功能 ...
- 有python基础学习java简单吗_【Python】Java程序员学习Python(三)— 基础入门
一闪一闪亮晶晶,满天都是小星星,挂在天上放光明,好像许多小眼睛.不要问我为什么喜欢这首歌,我不会告诉你是因为有人用口琴吹给我听. 一.Python学习文档与资料 一般来说文档的资料总是最权威,最全面的 ...
- 【自然语言处理】word2vec/doc2vec基础学习以及简单实践
文章目录 一.前言 二. 向量化算法word2vec 2.1 引言 2.2 word2vec原理 2.3 词的表示 三.神经网络语言模型 四.C&W模型 五.CBOW模型 5.1 CBOW模型 ...
- 学速写的步骤来啦,零基础学习更简单
最近美术集小编收到了很多新手学习速写的问题点,想要学习速写,应该从哪些步骤开始呢?今天广州美术集网校就帮大家整理了一些画速写的步骤,掌握好这些步骤,速写的学习就像开了加速器: 第一,我们在画速写的 ...
- salesforce lightning零基础学习(三) 表达式的!(绑定表达式)与 #(非绑定表达式)
在salesforce的classic中,我们使用{!expresion}在前台页面展示信息,在lightning中,上一篇我们也提及了,如果展示attribute的值,可以使用{!v.expresi ...
- 音频基础学习三——声音的时频谱
文章目录 前言 时域与频域 1.什么是时域? 2.什么是频域? 3.一张图理解时域和频域 4.意义 总结 前言 在上一篇文章中,我们了解到:任何重复的波形都可以分解为含有基波频率和一系列为基波倍数的谐 ...
- 【MySQL系列】数据库基础学习_简单认识数据库
「前言」文章内容大致是数据库基础,以及数据库的基本知识. 「归属专栏」MySQL 「主页链接」个人主页 「笔者」枫叶先生(fy) 「枫叶先生有点文青病」「句子分享」 我见青山多妩媚,料青山.见我应如是 ...
- Verilog基础学习三
文章目录 一.基础门电路(Basic Gate) 1.gate 2.真值表 3.关于电路设计思路 4.门电路与向量 二.多路选择器(multiplexer) 1. 2-to-1 multiplexer ...
最新文章
- 国内android应用商城中程序隐私泄露分析,基于数据流分析的Android应用隐私泄露检测研究...
- 没有最快,只有更快!富士通74.7秒在ImageNet上训练完ResNet-50
- 【算法基础】漫画:什么是 “跳表” ?
- Core Foundation 与 cocoa Foundation框架区别
- thinking-in-java(20)注解
- 为什么在2012/2013年我将在新的Enterprise Java项目中继续使用Spring *和* Java EE
- [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第50篇]什么是BLS基于Weil对的签名方案?
- leetcode57. 插入区间
- Linux环境下Tomcat部署Solr4.x
- python解决数据不均衡,上采样方法解决
- android 仿ios三级联动,仿iOS的PickerView控件,有时间选择和选项选择并支持一二三级联动效果...
- 详解 meta http-equiv = X-UA-Compatible content = IE=edge,chrome=1 /
- 用php动态创建图像,php利用imagecreatetruecolor动态生成高清图片代码
- oracle学习资料
- 经典枚举——百钱百鸡问题
- oracle,pdb模式,数据库重启
- 腾讯随星播 v2.2.1 官方版​
- 电脑键盘快捷键和组合键功能使用大全
- 联想t450进入bios设置按哪个键_联想台式机怎么进入bios|联想台式电脑按什么键进bios设置...
- python中argument什么意思_Python中parameters与argument区别
热门文章
- ANSYS Electromagnetics Suite 18.2安装后找不到Icepak
- 2021年3月四篇深度学习论文推荐
- 汇编语言编写的一个“接球游戏”
- Fisco Bcos区块链浏览器(WeBase)环境搭建
- Cryp.1.大整数相乘---分治法
- 连接android设备
- Windows10企业版下载与安装教程
- QuickTest Professional 11无限试用期破解方法
- [4G5G专题-24]:架构-5G接入网协议栈规范
- Nat. Commun. | Ⅱ型糖尿病控制不良怎么办?专注于HbA1c进行综合多种用药治疗的综合比较为您提供优化方案...