吴裕雄--天生自然 R语言开发学习:图形初阶(续二)
- # ----------------------------------------------------#
- # R in Action (2nd ed): Chapter 3 #
- # Getting started with graphs #
- # requires that the Hmisc and RColorBrewer packages #
- # have been installed #
- # install.packages(c("Hmisc", "RColorBrewer")) #
- #-----------------------------------------------------#
- par(ask=TRUE)
- opar <- par(no.readonly=TRUE) # make a copy of current settings
- attach(mtcars) # be sure to execute this line
- plot(wt, mpg)
- abline(lm(mpg~wt))
- title("Regression of MPG on Weight")
- # Input data for drug example
- dose <- c(20, 30, 40, 45, 60)
- drugA <- c(16, 20, 27, 40, 60)
- drugB <- c(15, 18, 25, 31, 40)
- plot(dose, drugA, type="b")
- opar <- par(no.readonly=TRUE) # make a copy of current settings
- par(lty=2, pch=17) # change line type and symbol
- plot(dose, drugA, type="b") # generate a plot
- par(opar) # restore the original settings
- plot(dose, drugA, type="b", lty=3, lwd=3, pch=15, cex=2)
- # choosing colors
- library(RColorBrewer)
- n <- 7
- mycolors <- brewer.pal(n, "Set1")
- barplot(rep(1,n), col=mycolors)
- n <- 10
- mycolors <- rainbow(n)
- pie(rep(1, n), labels=mycolors, col=mycolors)
- mygrays <- gray(0:n/n)
- pie(rep(1, n), labels=mygrays, col=mygrays)
- # Listing 3.1 - Using graphical parameters to control graph appearance
- dose <- c(20, 30, 40, 45, 60)
- drugA <- c(16, 20, 27, 40, 60)
- drugB <- c(15, 18, 25, 31, 40)
- opar <- par(no.readonly=TRUE)
- 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)
- # Adding text, lines, and symbols
- 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))
- # Listing 3.2 - An Example of Custom Axes
- x <- c(1:10)
- y <- x
- z <- 10/x
- opar <- par(no.readonly=TRUE)
- par(mar=c(5, 4, 4, 8) + 0.1)
- plot(x, y, type="b",
- pch=21, col="red",
- yaxt="n", lty=3, ann=FALSE)
- lines(x, z, type="b", pch=22, col="blue", lty=2)
- axis(2, at=x, labels=x, col.axis="red", las=2)
- axis(4, at=z, labels=round(z, digits=2),
- col.axis="blue", las=2, cex.axis=0.7, tck=-.01)
- mtext("y=1/x", side=4, line=3, cex.lab=1, las=2, col="blue")
- title("An Example of Creative Axes",
- xlab="X values",
- ylab="Y=X")
- par(opar)
- # Listing 3.3 - Comparing Drug A and Drug B response by dose
- dose <- c(20, 30, 40, 45, 60)
- drugA <- c(16, 20, 27, 40, 60)
- drugB <- c(15, 18, 25, 31, 40)
- opar <- par(no.readonly=TRUE)
- par(lwd=2, cex=1.5, font.lab=2)
- plot(dose, drugA, type="b",
- pch=15, lty=1, col="red", ylim=c(0, 60),
- main="Drug A vs. Drug B",
- xlab="Drug Dosage", ylab="Drug Response")
- lines(dose, drugB, type="b",
- pch=17, lty=2, col="blue")
- abline(h=c(30), lwd=1.5, lty=2, col="gray")
- 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"))
- par(opar)
- # Example of labeling points
- 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)
- # View font families
- opar <- par(no.readonly=TRUE)
- par(cex=1.5)
- plot(1:7,1:7,type="n")
- text(3,3,"Example of default text")
- text(4,4,family="mono","Example of mono-spaced text")
- text(5,5,family="serif","Example of serif text")
- par(opar)
- # Combining graphs
- attach(mtcars)
- opar <- par(no.readonly=TRUE)
- 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)
- attach(mtcars)
- opar <- par(no.readonly=TRUE)
- par(mfrow=c(3,1))
- hist(wt)
- hist(mpg)
- hist(disp)
- par(opar)
- detach(mtcars)
- attach(mtcars)
- layout(matrix(c(1,1,2,3), 2, 2, byrow = TRUE))
- hist(wt)
- hist(mpg)
- hist(disp)
- detach(mtcars)
- attach(mtcars)
- layout(matrix(c(1, 1, 2, 3), 2, 2, byrow = TRUE),
- widths=c(3, 1), heights=c(1, 2))
- hist(wt)
- hist(mpg)
- hist(disp)
- detach(mtcars)
- # Listing 3.4 - Fine placement of figures in a graph
- opar <- par(no.readonly=TRUE)
- par(fig=c(0, 0.8, 0, 0.8))
- plot(mtcars$mpg, mtcars$wt,
- xlab="Miles Per Gallon",
- ylab="Car Weight")
- par(fig=c(0, 0.8, 0.55, 1), new=TRUE)
- boxplot(mtcars$mpg, horizontal=TRUE, axes=FALSE)
- par(fig=c(0.65, 1, 0, 0.8), new=TRUE)
- boxplot(mtcars$wt, axes=FALSE)
- mtext("Enhanced Scatterplot", side=3, outer=TRUE, line=-3)
- par(opar)
吴裕雄--天生自然 R语言开发学习:图形初阶(续二)的更多相关文章
- 吴裕雄--天生自然 R语言开发学习:时间序列(续二)
#-----------------------------------------# # R in Action (2nd ed): Chapter 15 # # Time series # # r ...
- 吴裕雄--天生自然 R语言开发学习:方差分析(续二)
#-------------------------------------------------------------------# # R in Action (2nd ed): Chapte ...
- 吴裕雄--天生自然 R语言开发学习:回归(续二)
#------------------------------------------------------------# # R in Action (2nd ed): Chapter 8 # # ...
- 吴裕雄--天生自然 R语言开发学习:分类(续二)
#-----------------------------------------------------------------------------# # R in Action (2nd e ...
- 吴裕雄--天生自然 R语言开发学习:聚类分析(续一)
#-------------------------------------------------------# # R in Action (2nd ed): Chapter 16 # # Clu ...
- 吴裕雄--天生自然 R语言开发学习:时间序列(续三)
#-----------------------------------------# # R in Action (2nd ed): Chapter 15 # # Time series # # r ...
- 吴裕雄--天生自然 R语言开发学习:时间序列(续一)
#-----------------------------------------# # R in Action (2nd ed): Chapter 15 # # Time series # # r ...
- 吴裕雄--天生自然 R语言开发学习:方差分析(续一)
#-------------------------------------------------------------------# # R in Action (2nd ed): Chapte ...
- 吴裕雄--天生自然 R语言开发学习:回归(续四)
#------------------------------------------------------------# # R in Action (2nd ed): Chapter 8 # # ...
- 吴裕雄--天生自然 R语言开发学习:回归(续三)
#------------------------------------------------------------# # R in Action (2nd ed): Chapter 8 # # ...
随机推荐
- UML-从需求到设计--迭代进化
按照UP原则,初始阶段做10%的需求,而细化阶段开始为这10%的需求设计解决方案.后续章节介绍如何设计.
- 题解 P5837 【[USACO19DEC]Milk Pumping】
这题其实想法挺简单的,因为他只需要简单的把每个点的花费和流量用dp记下来就好了 1.怎么记: 首先考虑dp的状态.由于所在的点和流量都要记,所以dp开二维,一维记所在的点,另一维记去哪 //dp[i] ...
- Python—使用列表构造栈数据结构
class Stack(object): """ 使用列表实现栈 """ def __init__(self): self.stack = ...
- ZJNU 1535 - 新建的大楼--中高级
因为从俯视图看,输入输出的视角是从右下方看向左上方的 所以左上角的正方体最有可能被其他正方体挡住 立体上,底部的正方体最有可能被顶部的正方体挡住 所以绘图应该从后往前,从下往上绘制 剩下的就是一大堆计 ...
- MySQL--事务控制和锁定语句
MySQL 支持对 MyISAM 和 MEMORY 存储引擎的表进行表级锁定,对 BDB 存储引擎的表进行页级锁定,对 InnoDB 存储引擎的表进行行级锁定.默认情况下,表锁和行锁都是自动获得的,不 ...
- js等于符号的详解
JavaScript == 与 === 区别 1.对于 string.number 等基础类型,== 和 === 是有区别的 a)不同类型间比较,== 之比较 "转化成同一类型后的值&quo ...
- ruoyi IpUtils
package com.ruoyi.common.utils; import java.net.InetAddress; import java.net.UnknownHostException; i ...
- 通过TleChat插件一键Getshell
TleChat网站插件是一个发布到wordpress,typecho和emlog社区上的站长聊天插件,站长聊天室插件为站长和用户提供聊天室功能,让站长与用户之间的联系更加友爱,支持文本.长文本.语音聊 ...
- 洛谷-P3796-【模板】AC自动机(加强版)
题目传送门 -------------------------------------- 过年在家无聊补一下这周做的几道AC自动机的模板题 sol:AC自动机,在fail边的基础上再加一个last边, ...
- Matlab高级教程_第三篇:Matlab转码C/C++方式(混编)_第二部分
这一部分通过一些实例来进行转码和调试的讲解: 1. 输入变量.输出变量和过程内变量的内存预分配 函数代码:函数名test function [A,B] = test( mark,num,array ) ...