导图社区 R语言
这是一个R语言的思维导图,介绍了绘图主函数、plot、绘图附属函数、参考线、标签和图例、主题几个方面的内容。
编辑于2021-08-02 16:47:51R语言
绘图主函数
plot()
针对对象
图形样式
type
符号和线条
pch:指定绘制点所使用的符号,取值范围[0, 24], 其中4是“差号”,20是“点”(pointCharacter)
cex:指定符号的大小。cex是一个数值,表示pch的倍数。 默认是1.5倍 ( )
lty:指定线条类型。 lty=1代表实线,2至6都是虚线,虚的程度不一样.( LineType)
lwd:指定线条宽度. 默认值为lwd=1。(LineWidth)
坐标轴
axes=FALSE 将禁用全部坐标轴,框架和刻度全部没有了
asp: 限定 y/x aspect 比率
xaxt="n" 禁用x轴的刻度线
yaxt="n" 禁用y轴的刻度线
xlim x坐标轴的范围,只写出最小值和最大值
ylim y坐标轴的范围,只写出最小值和最大值
也可以通过axis函数自定义axis(……)
side:一个整数。表示在图形的哪边绘制坐标轴(1=下,2=左,3=上,4=右)
at:一个数值向量,表示需要绘制刻度线的位置
labels:一个字符型向量(也可以是数值型),表示刻度线旁边的文字标签(刻度值),如果整个不写,则直接使用at的值
col:线条和刻度的颜色
lty:线条类型
las:标签的字体是否平行(=0)或者垂直(=2)坐标轴
tck:刻度线的长度(默认值-0.01,负值表示刻度在图形外,正值表示刻度在图形内侧)
标题和副标题
可以使用函数title,格式为:title(main = " ", sub = " ", xlab = " ", ylab = " ")
main 系列:cex.main, col.main, font.main
sub 系列:cex.sub, col.sub, font.sub
xlab 系列:xlab=c("font.lab", "cex.lab", "col.lab")
ylab 系列:ylab=c("font.lab", "cex.lab", "col.lab")
line:在点之间画线
outer: 逻辑值,True 代表titles可以放置在 plot 的区域之外
Las:numeric in {0,1,2,3}; the style of axis labels. 标识坐标轴标签方向。
0:always parallel to the axis [default],
1:always horizontal,
2:always perpendicular to the axis,
3:always vertical.
也可以直接把title里面的参数直接放在plot()里面
text(), mtext() 用法类似title(), 参考上述总结
side:on which side of the plot (1=bottom, 2=left, 3=top, 4=right).
line:on which MARgin line, starting at 0 counting outwards.
图形尺寸和图形边界
pin:以英寸表示图形的宽和高
mai:以数值向量表示边界大小,顺序为"下、左、上、右",单位为英寸
mar:以数值向量表示边界大小,顺序为"下、左、上、右",单位为英分,默认值c(5, 4, 4, 2)+0.1
针对属性
颜色
col:默认绘图颜色。某些函数(如lines、pie)可以接受一个含有颜色值的向量,并自动循环使用。例如:col=c("red", "blue")需要绘制三条线,那么三条颜色分别为red、blue、red
col.axis:坐标轴刻度文字的颜色,不是坐标轴的颜色
col.lab:坐标轴标签(名称)的颜色
col.main:标题的颜色
col.sub:副标题的颜色
fg:图形的前景色
bg:图形的背景色
文本属性 (字体,字号,字样)
cex.axis:坐标轴刻度文字的缩放倍数
cex.lab:坐标轴标签(名称)的缩放倍数
cex.main:标题的缩放倍数
cex.sub:副标题的缩放倍数
font:整数。用于指定字体样式。1常规、2粗体、3斜体、4粗斜体
ps: 字体磅值(1磅约为1/72英寸)。文本的最终大小为 ps*cex
family: 绘制文本时使用的字体族。标准的取值为serif(衬线)、sans(无衬线)和mono(等宽)
绘图附属函数
参考线
abline(h=yvalues, v=xvalues)
标签和图例
legend(location, title, legend, ……)
lines()
abline()
title()
text()
mtext()
颜色
RColorBrewer 包
概述: RColorBrewer 包提供了 3 套配色方案
(1).连续型 sequential, 颜色渐变。
(2)极端型Diverging,生成深色强调两端、浅色表示中部的颜色,可用来标注数据中的离群点。
(3)离散型Qualitative,生成彼此差异明显的颜色,通常用来标记分类数据。
各个配色方案
连续型
(1)查看连续型的种类。 display.brewer.all(type="seq")# 有9种颜色。·
(2)用法:barplot( rep(1,6), col=brewer.pal(9,"Blues") ) # 数字9,表示使用色条中颜色的个数,引号内表示色条对应的名称。
极端型
(1)查看配色方案 display.brewer.all(type="div") # 有11种颜色。
(2)用法: barplot(rep(1,11),col=brewer.pal(11,"RdGy") )
假如需要的颜色数量小于给定的,可以选择其中的某几种颜色。如 barplot(rep(1,6),col= brewer.pal(11,"RdGy")[2:7] )# 第二到第七个颜色。
离散型(同上)
选择颜色
自主调制颜色
在颜色的渐变数量不够用的情况下,可以使用 colorRampPalette 拓展颜色。 (比如 RColorBrewer 提供了渐变九色,但是有十个样本) (colorRampPalette将Blues系列的第九个颜色进行了延伸,产生了10种渐变色。)
使用colorRampPalette可以扩展颜色。 if (!require("RColorBrewer")) { install.packages("RColorBrewer") library(RColorBrewer) } ### Set the display a 1 by 1 grid par(mfrow=c(1,1)) newpalette<-colorRampPalette(brewer.pal(9,"Blues"))(10) ### Generate random data matrix rand.data <- replicate(10,rnorm(100,100,sd=1.5)) ### Draw a box plot, with each box coloured by the 'newpalette' palette boxplot(rand.data,col=newpalette)
主题