R语言-图形初阶
在本节中,主要目的是如何使用R语言做出简单的图形
案例1:做出wt和mpg之间的关系
attach(mtcars)
plot(wt,mpg)
abline(lm(mpg~wt))
title('Regression of MPG on Weight')
detach(mtcars) 1. 绑定了数据集
2. 打开图形窗口并生成一副散点图
3. 添加了一条拟合曲线
4. 给图形增加标题
5. 解除绑定

还可以把生成的图片放到pdf中
pdf('mygraph.pdf')
attach(mtcars)
plot(wt,mpg)
abline(lm(mpg~wt))
title('Regression of MPG on Weight')
detach(mtcars)
dev.off()
案例2 分析病人对两种药物的响应情况
1.准备数据
dose <- c(20,30,40,45,60)
drugA <- c(16,20,27,40,60)
drugB <- c(15,18,25,31,40)
4 #描述药物A的剂量和病人的响应
plot(dose,drugA,type='b')

2.可以使用图形参数来修改上述图片的样式
opar <- par(no.readonly = T)
par(lty=2,pch=17)
plot(dose,drugA,type='b')
par(opar) 1. 复制了当前图形的参数设置
2. 把线条的类型改成虚线,默认的间断点改成三角形
3.绘制图形并还原了原始设

plot(dose,drugA,type='b',lty=3,lwd=3,pch=15,cex=2) 1. 线性位点线,宽度是默认的3倍,分割点为正方形,大小是默认大小的2倍

3.使用图形参数来控制外观
par(pin=c(2,3))
par(lwd=2,cex=1.5)
par(cex.axis=.75,font.axis=3)
plot(dose,drugA,type='b',pch=19,lty=2,col='red')
plot(dose,drugB,type='b',pch=23,lty=6,col='blue',bg='green')
par(opar) 1. 修改图形的默认参数,(2英寸宽,3英寸高)
2. 线宽为默认的2倍,间隔符为默认的1.5倍
3. 坐标轴刻度的文字设置为斜体,为默认大小的0.75倍
4. 使用红色的虚线和实心圆点创建第一幅图形
5. 使用蓝色虚线,蓝色边框和绿色实心菱形创建第二幅图形
6. 还原初始的图形设置


4.添加文本坐标和图例
plot(dose,drugA,type='b',col='red',lty=2,pch=2,lwd=2,
main = 'Clinical Trials for Drug A',
sub = 'This is hypothetical data',
xlab = 'Dosage',ylab = 'Drug Response',
xlim = c(0,60),ylim = c(0,70)) 2. 插入主标题
3. 插入副标题
4. X轴说明
5. Y轴说明
6. 坐标轴范

plot(dose,drugA,type='b',col='red',lty=2,pch=2,lwd=2,
main = 'Clinical Trials for Drug A',
sub = 'This is hypothetical data',
xlab = 'Dosage',ylab = 'Drug Response',
xlim = c(0,60),ylim = c(0,70))
lines(dose,drugB,type='b',pch=17,lty=2,col='blue')
abline(h=c(30),lwd=1.5,lty=2,col='grey')
library(Hmisc)
minor.tick(nx=3,ny=3,tick.ratio=0.5)
legend('topleft',inset = .05,title = 'drug type',c('A','B'),lty = c(1,2),pch = c(15,17),col=c('red','blue')) 1~7. 作图
8~9. 添加刻度线
10. 添加图例

5.文本标注
attach(mtcars)
plot(wt,mpg,main = 'Mileage vs. Car Weight',xlab = 'Weight',ylab = 'Mileage',pch=18,col='blue')
text(wt,mpg,row.names(mtcars),cex = 0.6,pos=4,col='red')
detach(mtcars) 3. text函数用于标注图形中的点

6.图形组合
attach(mtcars)
opar <- par(no.readonly = T)
par(mfrow=c(2,2))
plot(wt,mpg,main = 'Scatterplot of wt vs. mpg')
plot(wt,disp,main = 'Scatterplot of wt vs. disp')
hist(wt,main = 'Histogram of wt')
boxplot(wt ,main='boxplot of wt')
par(opar)
detach(mtcars) 3. 指定图形的分布
4. wt和mpg的散点图
5. wt和disp的散点图
6. wt的直方图
7. wt的箱

attach(mtcars)
layout(matrix(c(1,1,2,3),2,2,byrow = T))
hist(wt)
hist(mpg)
hist(disp)
detach(mtcars) 2. 使用layout函数改变图形的布

7.图形布局的精细控制
opar <- par(no.readonly = T)
par(fig=c(0,0.8,0,0.8))
plot(mtcars$wt,mtcars$mpg,xlab = 'Miles Per Gallon',ylab = 'Car Weight')
par(fig=c(0,0.8,0.55,1),new=T)
boxplot(mtcars$wt,horizontal = T,axes=F)
par(fig=c(0.65,1,0,0.8),new=T)
boxplot(mtcars$mpg,axes=F)
mtext('Enhanced Scatterplot',side = 3,outer = T,line = -3)
par(opar) 2~3. 设置散点图
4~5. 在上方添加wt的箱线图
6~7. 在右方添加mpg的箱线图
8. 添加标题

小结:
本节的主要目的是修改R中的默认图形,修改一副图形的坐标轴,字体,间隔符,线条,颜色以及如何添加标题,副标题,标签,文本参考线
如何制定图形的边界和大小,以及如何将多幅图形整合为一幅
R语言-图形初阶的更多相关文章
- R语言—图像初阶
dev.new() 创建一个新图像之前打开一个新的窗口 win.graph() 同上 pch() 指定绘制点时使用的符号 cex() 指定符号的大小,是一个数值,表示绘图符号相当于默认大小的缩放倍数 ...
- R语言实战(一)介绍、数据集与图形初阶
本文对应<R语言实战>前3章,因为里面大部分内容已经比较熟悉,所以在这里只是起一个索引的作用. 第1章 R语言介绍 获取帮助函数 help(), ? 查看函数帮助 exampl ...
- R语言图形base系统(二)
x<-c(1:10) y<-x z<-10/x opar<-par(no.readonly = T) par(mar=c(5,4,4,8)+0.1) plot(x,y,type ...
- R语言图形base系统(一)
一般R作图有三大绘图系统:base系统.ggplot2绘图系统.lattice绘图系统. 本篇主要介绍base系统绘图时的图形参数.一般用plot()函数来完成.在R中,若 ...
- R语言爬虫初尝试-基于RVEST包学习
注意:这文章是2月份写的,拉勾网早改版了,代码已经失效了,大家意思意思就好,主要看代码的使用方法吧.. 最近一直在用且有维护的另一个爬虫是KINDLE 特价书爬虫,blog地址见此: http://w ...
- R语言实战读书笔记(三)图形初阶
这篇简直是白写了,写到后面发现ggplot明显更好用 3.1 使用图形 attach(mtcars)plot(wt, mpg) #x轴wt,y轴pgabline(lm(mpg ~ wt)) #画线拟合 ...
- R语言图形base系统(三)
本篇介绍R语言base系统绘制散点图.条形图.直方图.箱线图.饼图,还将简单介绍点图.核密度图.折线图. 散点图: attach(mtcars) plot(wt, mpg, main="B ...
- 《R语言实战》读书笔记--第三章 图形初阶(一)
3.1使用图形 可以使用pdf等函数将图形直接保存在文件中.在运用attach和detach函数的使用中经常出现错误,比如命名重复的问题,所以,应该尽量避免使用这两个函数. plot是一般的画图函数, ...
- R语言学习——图形初阶之折线图与图形参数控制
plot()是R中为对象作图的一个泛型函数(它的输出将根据所绘制对象类型的不同而变化):plot(x,y,type="b")表示将x置于横轴,y置于纵轴,绘制点集(x,y),然后使 ...
随机推荐
- python爬虫之requests模块介绍
介绍 #介绍:使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3) #注意:requests库发送请求将网页内容下 ...
- Machine Learning - week 4 - 编程练习
= X' * (h - y) LrCostFunction 与上一周的有什么不同? 与 week3 的 costFunctionReg 是一样的.Week3 中参考答案没有排除 theta 第一行,但 ...
- deeplearning.ai 卷积神经网络 Week 4 特殊应用:人脸识别和神经风格转换 听课笔记
本周课程的主题是两大应用:人脸检测和风格迁移. 1. Face verification vs. face recognition Verification: 一对一的问题. 1) 输入:image, ...
- 51Nod 1632 B君的连通(递归,快速幂)
1632 B君的连通 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 B国拥有n个城市,其交通系统呈树状结构,即任意两个城市存在且仅存在一条交通线将其连接.A国是B ...
- HDU2973(威尔逊定理)
YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total S ...
- Springboot-shiro-redis实现登录认证和权限管理
Springboot-shiro-redis实现登录认证和权限管理 在学习之前: 首先进行一下Apache Shiro和Shiro比较: Apache Shiro是一个功能强大.灵活的,开源的安全框架 ...
- CSS鼠标样式 cursor 属性
值 描述 url 需使用的自定义光标的 URL. 注释:请在此列表的末端始终定义一种普通的光标,以防没有由 URL 定义的可用光标. default 默认光标(通常是一个箭头) auto 默认.浏览器 ...
- openfire服务器+Spark搭建即时聊天系统 & 阿里云的初步探索
晚上出去和洋仔吃了涮肉,喝了点啤酒,不知不觉就聊到了11点,感觉他工作状态还不错,emmm...都要加油吧.虽然没有当时去山西零下二十多度那么夸张,这几天北京的冬夜还是有点小冷的.好了进入正题: 一. ...
- (Release Candidate)Candidate
RC:(Release Candidate)Candidate是候选人的意思,用在软件或者操作系统上就是候选版本
- java中的左右移
package scanner; public class LeftMove { public static void main(String[] args) { int i = 1; System. ...