R语言与医学统计图形【3】条形图、误差图
R语言基础绘图系统
基础图形——条形图、误差图
3.条形图
barplot接收的数据是矩阵而非数据框。
data <- sample(c(50:80),5)
barplot(data,col=heat.colors(5))
my_matrix <- matrix(data=sample(10:40,9),
nrow = 3,
dimnames = list(c('A',"B",'C'),
paste('dose',1:3)))
barplot(t(my_matrix),
beside = T, #是否平行放置,F为堆栈
col = c('deeppink1','forestgreen','gray'))
更多参数用法。
par(mfrow=c(2,2))
average_gdp <- c(6500,8000,13000,9200)
country <- c('China',"Korea",'Japan',"Singapore")
barplot(average_gdp,
names.arg = country, #为条柱添加标签
horiz = F, #是否水平放置
width = c(0.5,0.6,0.8,1.0), #条柱宽度
space = 1.2) #条柱间距

4.误差条图
没有直接可用的函数来绘制误差条图。
# 误差条图
set.seed(2017)
data <- data.frame(doseA=rnorm(100,10,2),
doseB=rnorm(100,13,5),
doseC=rnorm(100,8,3))
data_mean <- apply(data,2,mean)
data_sd <- apply(data,2,sd) #标准差
barcenters <- barplot(data_mean,names.arg = names(data_mean),
ylim=c(0,20))
#存入对象中,保存的是条柱中心位置的横坐标
#以下两个都是低级绘图函数,前4个参数是起始点和终止点坐标
segments(barcenters,data_mean-data_sd,barcenters,
data_mean+data_sd,lty=1.2)
arrows(barcenters,data_mean-data_sd,
barcenters,data_mean+data_sd,
code = 3,angle = 90)#水平箭头,code两端都绘制箭头

自定义函数来绘制误差条图。
#均值和标准差是绘制误差条的基本元素
A=c(rep('drug A',10),rep('drug B',10))
B=rnorm(20,10,4)
C=rnorm(20,8,3)
D=rnorm(20,5,4)
data=data.frame(A,B,C,D)
colnames(data)=c('treatment','dose_1',"dose_2","dose_3")
#均值计算
bilan=aggregate(cbind(dose_1,dose_2,dose_3)~treatment,
data = data,mean)
rownames(bilan)=bilan[,1]
bilan=as.matrix(bilan[,-1])
lim=1.2*max(bilan)
#标准差计算
stdev=aggregate(cbind(dose_1,dose_2,dose_3)~treatment,
data=data,sd)
rownames(stdev)=stdev[,1]
stdev=as.matrix(stdev[,-1])*1.96/10
#定义函数
error.bar <- function(x,y,upper,lower=upper,length=0.1,...){
arrows(x,y+upper,x,y-lower,angle = 90,code=3,
length = length,...)
}
ze_barplot <- barplot(bilan,
beside = T,
#legend.text = T,
col = c('blue','skyblue'),
ylim = c(0,lim),
ylab = 'height')
error.bar(ze_barplot,bilan,stdev)

R语言与医学统计图形【3】条形图、误差图的更多相关文章
- R语言与医学统计图形【1】par函数
张铁军,陈兴栋等 著 R语言基础绘图系统 基础绘图包之高级绘图函数--par函数 基础绘图包并非指单独某个包,而是由几个R包联合起来的一个联盟,比如graphics.grDevices等. 掌握par ...
- R语言与医学统计图形【5】饼图、条件图
R语言基础绘图系统 基础图形--饼图.克利夫兰点图.条件图 6.饼图 pie(rep(1,26),col=rainbow(26), labels = LETTERS[1:26], #标签 radius ...
- R语言与医学统计图形【6】低级绘图函数
R语言基础绘图系统 基础绘图包之低级绘图函数--定义坐标轴.图例.文本 低级绘图函数:本身不具备图形绘制能力,只是在已有图形基础上添加元素. 函数 功能 arrows 添加箭头 axis 坐标轴 bo ...
- R语言与医学统计图形【4】直方图、金字塔图
R语言基础绘图系统 基础图形--直方图.金字塔图 3.直方图 参数设置及比较. op <- par(mfrow=c(2,3)) data <- rnorm(100,10,5) hist(d ...
- R语言与医学统计图形【2】散点图、盒形图
R语言基础绘图系统 基础图形--散点图.盒形图 plot是一个泛型函数(generic method),对于不同的数据绘制不同的图形. par函数的大部分参数在plot中通用. 1.散点图 plot绘 ...
- R语言与医学统计图形-【28】ggplot2扩展包ggrepel、ggsci、gganimate、ggpubr
ggplot2绘图系统--扩展包ggrepel.ggsci.gganimate.ggpubr等 部分扩展包可在CRAN直接下载,有些需借助devtools包从Github下载. 1. ggrepel包 ...
- R语言与医学统计图形【8】颜色的选取
R语言基础绘图系统 基础绘图包之低级绘图函数--内置颜色. 1.内置颜色选取 功能657种内置颜色.colors() 调色板函数:palette(), rgb(), rainbow(). palett ...
- R语言与医学统计图形【7】低级绘图函数
R语言基础绘图系统 基础绘图包之低级绘图函数--气泡图.一页多图.背景网格.添加线条和散点.数学表达式 4.气泡图 symbols是高级绘图函数,可在图上添加标记,标记的形状包括:circles,sq ...
- R语言与医学统计图形-【33】生存曲线、森林图、曼哈顿图
1.生存曲线 基础包survival+扩展包survminer. survival包内置肺癌数据集lung. library(survival) library(survminer) str(lung ...
随机推荐
- 2021.8.9考试总结[NOIP模拟34]
T1 Merchant 如果$t=0$时不能达到$s$,那么所拿物品的价值一定关于时间单调递增,答案单调.因此可以特判$0$后二分. 用$sort$复杂度被卡,要用$\textit{nth_eleme ...
- 如何清理history
工作中,需要清理history 清理当前会话历史命令 history -c 清理当前用户所有历史命令 echo > .bash_history #在用户主目录执行此操作
- Ubuntu virtualenv 创建 python2 虚拟环境 激活 退出
首先默认安装了virtualenv 创建python2虚拟环境 your-name@node-name:~/virtual_env$ virtualenv -p /usr/bin/python2 py ...
- netty系列之:搭建客户端使用http1.1的方式连接http2服务器
目录 简介 使用http1.1的方式处理http2 处理TLS连接 处理h2c消息 发送消息 总结 简介 对于http2协议来说,它的底层跟http1.1是完全不同的,但是为了兼容http1.1协议, ...
- redis 的单机安装
redis 单机安装 参考文档地址:https://www.cnblogs.com/withfeel/p/10655994.html 1,下载redis,下载地址http://download.red ...
- scrapy 的response 的相关属性
Scrapy中response介绍.属性以及内容提取 解析response parse()方法的参数 response 是start_urls里面的链接爬取后的结果.所以在parse()方法中,我 ...
- Linux 文本三剑客之 awk
Linux 系统中一切皆文件. 文件是个文本.可以读.可以写,如果是二进制文件,还能执行. 在使用Linux的时候,大都是要和各式各样文件打交道.熟悉文本的读取.编辑.筛选就是linux系统管理员的必 ...
- k8s入坑之路(9)k8s网络插件详解
Flannel: 最成熟.最简单的选择 Calico: 性能好.灵活性最强,目前的企业级主流 Canal: 将Flannel提供的网络层与Calico的网络策略功能集成在一起. Weave: 独有的功 ...
- VLAN技术 & ACL访问控制
VLAN介绍与配置 VLAN概述 交换网络中的问题 VLAN(Virtual Local Area Network) 在物理网络上划分出逻辑网 ,对应OS模型第二层 VLAN划分不受端口物理位置限制, ...
- 【Python+postman接口自动化测试】(7)Postman 的使用教程
Postman v6的使用 Postman: 简单方便的接口调试工具,便于分享和协作.具有接口调试,接口集管理,环境配置,参数化,断言,批量执行,录制接口,Mock Server, 接口文档,接口监控 ...