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 ...
随机推荐
- Seata的一些概念
Seata的一些概念 一.什么是seata 二.AT模式的介绍 1.前提条件 2.整体机制 3.读写隔离的实现 1.写隔离 2.读隔离 三.事务分组 1.事务分组是什么? 2.通过事务分组如何找到后端 ...
- docker multi-stage 多阶段构建
多阶段构建 一.需求 二.普通构建 1.编写Dockerfile 2.构建镜像 三.多阶段(multi-stage)构建 1.编写Dockerfile 2.构建镜像 四.比较2个镜像的体积大小 我们在 ...
- Sharding-JDBC基本使用,整合Springboot实现分库分表,读写分离
结合上一篇docker部署的mysql主从, 本篇主要讲解SpringBoot项目结合Sharding-JDBC如何实现分库分表.读写分离. 一.Sharding-JDBC介绍 1.这里引用官网上的介 ...
- Spring:面向切面编程的AOP
一.前言 除了依赖注入(DI),Spring框架提供的另一个核心功能是对面向方面的编程(AOP)的支持. AOP通常被称为实现横切关注点的工具.横切关注点一词是指应用程序中的逻辑不能与应用程序的其余部 ...
- https的加密解密过程
前置知识 SSL是90年代Netscape弄出来的一套东西,为的是解决HTTP协议明文传输数据的问题.后来SSL慢慢成了事实上的标准,于是IETF就把SSL标准化了,名字叫做TLS,TLS 1.0其实 ...
- 『学了就忘』Linux基础 — 15、了解Linux系统的目录结构
目录 1.一级目录说明 (1)一级目录列表 (2)/bin/和/sbin/目录说明 (3)/boot/目录说明 (4)/lib/和/lib64/目录说明 (5)/lost+found/目录说明 (6) ...
- 暴力尝试安卓gesture.key
import hashlib import os import itertools f = open(r'D:\KEY\gesture.key','r') psd = f.readline() f.c ...
- git删除未被追踪的文件
# 先看看会删掉哪些文件,防止重要文件被误删 git clean -n # 删除 untracked files git clean -f # 连 untracked 的目录也一起删掉 git cle ...
- PTA二叉搜索树的操作集 (30分)
PTA二叉搜索树的操作集 (30分) 本题要求实现给定二叉搜索树的5种常用操作. 函数接口定义: BinTree Insert( BinTree BST, ElementType X ); BinTr ...
- sqlalchemy insert or ignore
insert ignore # insert ignoreinsert_stmt = TimePoint.__table__.insert().prefix_with(" ignore&qu ...