R语言与医学统计图形【2】散点图、盒形图
R语言基础绘图系统
基础图形——散点图、盒形图
plot是一个泛型函数(generic method),对于不同的数据绘制不同的图形。
par函数的大部分参数在plot中通用。
1.散点图
plot绘制散点图类型,type有6种,即p, b, l, s, o, n。
type=c('p','b','l','s','o','n')
par(mfrow=c(2,3))
for(i in 1:6){
plot(1:10,type = type[i],
main = paste('type is: ',type[i]))
}

2.盒形图
原始图
boxplot(rnorm(10))
添加参数
#range参数:触须线(去除异常值后的最大和最小值)的延伸范围
par(mfrow=c(1,3))
set.seed(100)
data=rnorm(40)
boxplot(data,range=0.5,xlab='range is 0.5',col = 'blue')
boxplot(data,range=1,xlab='range is 1',col = 'blue')
boxplot(data,range=1.5,xlab='range is 1.5',col='blue')
#其他参数
boxplot(len ~ dose, #连续+分类变量
data=ToothGrowth,
boxwex=0.25, #box宽度
at=1:3-0.2, #盒子的位置
subset=supp=="VC", #数据取子集
col="yellow", #填充色
names=c('dose=0.5','dose=1.0','dose=2.0'), #box标签
main="Tooth Growth",
xlab="Vitamin C dose mg",
ylab="tooth length",
xlim=c(0.5,3.5),ylim=c(0,35),
yaxs="i") #y轴样式
多个盒子比较
boxplot(len ~ dose,
data=ToothGrowth,
add=TRUE, #在当前图形添加新的盒形图
boxwex=0.25,
at=1:3+0.2,
subset=supp=="OJ",
col="orange",
names=c('dose=0.5','dose=1.0','dose=2.0') #box标签
)

突出某个盒子,如阳性和阴性对照
names=c(rep('Maestro',20),rep('Presto',20),
rep('Nerak',20),rep('Eskimo',20),rep('Nairobi',20),
rep('Artiko',20))
value=c(sample(3:10,20,replace = T),sample(2:5,20,replace = T),
sample(6:10,20,replace = T),sample(6:10,20,replace = T),
sample(1:7,20,replace = T),sample(3:10,20,replace = T))
data=data.frame(names,value)
boxplot(data$value ~ data$names,
col=ifelse(levels(data$names)=="Nairobi",rgb(0.1,0.1,0.7,0.5),
ifelse(levels(data$names)=="Eskimo",rgb(0.8,0.1,0.3,0.6),
"grey90")),
ylab="disease",xlab="- varity -")

排序
#排序
order_names <- with(data,reorder(names,value,median,na.rm=T))
#reorder排序:第一个参数需要排序的因子变量,第二个排序标准,第三个排序函数
boxplot(data$value ~ order_names,ylab = "disease",xlab = '- variety -')

R语言与医学统计图形【2】散点图、盒形图的更多相关文章
- R语言与医学统计图形-【32】海盗图、词云图、日历图
1.海盗图 参数众多,其语法与基础包类似. 基础图. #devtools::install_github('ndphillips/yarrr') #install.packages('yarrr') ...
- R语言与医学统计图形-【31】动态交互绘图
1.plotly包 动态散点图 library(plotly) # 交互散点图 plot_ly(data=iris, x=~Sepal.Length, y=~Petal.Length, marker= ...
- R语言与医学统计图形-【28】ggplot2扩展包ggrepel、ggsci、gganimate、ggpubr
ggplot2绘图系统--扩展包ggrepel.ggsci.gganimate.ggpubr等 部分扩展包可在CRAN直接下载,有些需借助devtools包从Github下载. 1. ggrepel包 ...
- R语言与医学统计图形-【19】ggplot2坐标轴调节
ggplot2绘图系统--坐标轴调节 scale函数:图形遥控器.坐标轴标度函数: scale_x_continous scale_y_continous scale_x_discrete scale ...
- 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语言与医学统计图形【3】条形图、误差图
R语言基础绘图系统 基础图形--条形图.误差图 3.条形图 barplot接收的数据是矩阵而非数据框. data <- sample(c(50:80),5) barplot(data,col=h ...
随机推荐
- 关于评论区empty。。。
空荡荡的毫无人烟,博主希望路过的小哥哥/小姐姐(几率较小)留下些什么--
- 华为HG255D挂卡中继专用旋风科技固件
正的挂卡不掉线不掉速,稳定上网看上去好像很NB的样子 挂卡设置教程:http://picimg.lshou.com/pic/clou ... /6/t/1/30247515.mp4 固件链接: htt ...
- 难搞的C语言指针你搞懂了多少
C语言指针说难不难但是说容易又是最容易出错的地方,因此不管是你要做什么只要用到C指针你就跳不过,今天咱们就以 十九个例子来给大家简单的分析一下指针的应用,最后会有C语言视频资料提供给大家更加深入的参考 ...
- 实验 1: SDN拓扑实践
(图片和文档是自己写的,因为在CSDN也写了,所以会有自己的水印) 一.实验目的 能够使用源码安装Mininet: 能够使用Mininet的可视化工具生成拓扑: 能够使用Mininet的命令行生成特定 ...
- palindrome-partitioning leetcode C++
Given a string s, partition s such that every substring of the partition is a palindrome. Return all ...
- 0x03
指数级枚举:1到n任意选取的所有方案数: #include<bits/stdc++.h> using namespace std; int n,a[1100],vis[1100],cnt, ...
- linux 内核源代码情景分析——Intel X86 CPU 系列的寻址方式
当我们说一个CPU是"16位"或"32"位时,指的是处理器中"算数逻辑单元"(ALU)的宽度.数据总线通常与ALU具有相同的宽度.当Inte ...
- Github图床设置
创建新仓库 点击右上角加号->新建仓库,填写基本信息后点击下面的创建即可 https://github.com/new 创建新令牌 点击设置->开发者设置->私人令牌->生成新 ...
- CSS学习笔记:浮动属性
目录 一.浮动流是什么 二.通过代码实例了解浮动特点 1. 搭建测试框架 2. 添加浮动 3. 浮动元素的排布 4. 给行内元素添加浮动效果 5. 子元素浮动后对父元素的影响 5.1 在父元素中添加o ...
- SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0] ORA-12541: TNS:no listener
使用/app/oracle/product/11.2.0/bin/sqlldr导入数据报错: 监听没有开启?检查发现监正常 猜测是监听端口不是默认的1521有关系,直接在sid里面加上数据库服务器的i ...