R语言绘图系列:
使用geom_label绘制标签散点图
绘制点,并通过nudge参数对标签进行x轴和y轴上的平移
使用angle参数对标签角度进行设置
geom_label可以使用fill对颜色进行填充,fontface设置字体,geom_text不能填充颜色
parse参数意思是前面传入的是一个数学表达式,size定义标签相对大小。
画一个散点图
annotate函数传入标签
添加矩形
添加短线段
2.1 guide_legend函数(主要参数:color, shape, size)
图例调整函数也属于标度函数的一类,但不可以直接使用加号来连接,必须放在函数中,作为一个参数。
guide_colorbar和guide_legend设置的是不同的图例,guide_colorbar定义色条图例,guide_legend定义普通图例。
2.2 标度函数scale
对于连续型变量,使用的参数是scale_xxx_continous(),对于分类型变量,使用的是scale_xxx_discrete()。
2.3:theme函数
在theme函数中,与图例有关的主要参数有:
标题主要有五种:主标题,副标题,角注,x轴标签和y轴标签
ggtitle()只能定义标题和副标题,默认的位置在左上角。
数据准备
1 图内标注
函数text()用于绘图区域内部添加文本。
函数:text(x, y = NULL, labels = seq_along(x$x), adj = NULL, pos = NULL, offset = 0.5, vfont = NULL, cex = 1, col = NULL, font = NULL, ...)
x和y:用于指定添加文本的位置坐标,为数值型向量。如果,x和y向量的长度不同,则短的将会被循环使用。
labels:指定添加文本的内容,为字符串向量。
adj:调整文字的位置。其值位于[0,1]之间。当adj为1个值时,是调整labels的x轴的位置,当是2个值时,第1个调整的是x轴的位置,第2个调整的是y轴的位置。
pos:调整文字的方向位置,如果给定了此值,将覆盖adj给定的值。1,2,3和4分别对应坐标的下,左,上和右。
offset:此参数需要与pos结合使用。当指定pos时,给出字符偏移量。
vfont:NULL值为默认使用当前字体族。或者是一个长度为2的矢量字体字符向量。向量的第一个元素用于指定一种字体,第二个元素用于指定一种样式。如文本标签用表达式给出,则该项设置将被忽略。
cex:设置字体大小,如果为NA或NULL,则设置为1。
col:设置文本的颜色。
font:设置文本字体,1是默认值,普通文字,2代表加粗,3代表斜体, 4代表加粗+斜体,5只有用来ADOBE的设备上时,才有用。
srt:文本倾斜的角度。
1.1 指定坐标添加文本
1.2 指定坐标添加多个文本
1.3 对图形元素添加文本标注
1.4 特殊符号
有时候需要在图上标注诸如求和、积分、上下标等数学符号,还有一些公式等。这里需要用到函数expression(...),...是要输入的表达式。 可以通过help(plotmath)以获得更多表达式的细节和示例。
2 图外标注
函数mtext()用于在图形四个边界之一添加文本。
mtext(text, side = 3, line = 0, outer = FALSE, at = NA, adj = NA, padj = NA, cex = NA, col = NA, font = NA, ...)
text:指定文本内容。
side:指定是哪个页边空白(1=下面,2=左边,3=上边,4=右边)。
line:指定文字出现的位置,文字和对应坐标轴平行。从坐标轴开始向外从0开始计数。
at:以用户坐标指定字符串位置。
adj:调整阅读方向。为使字符串平行坐标轴,adj=0,意味着左对齐或下对齐,而adj=1表示右对齐或上对齐。
padj:调整每个字符串垂直阅读的方向(它通过adj控制)。对于平行轴的字符串,padj=0表示右或上对齐,padj=1表示左或下对齐。
cex:调整字体大小,默认为1。
font:调整文字字体。
col:调整文字颜色。
参考资料:
《R语言实战》(中文版),人民邮电出版社,2013.
R语言中使用text()函数给绘图添加文字, https://www.biye5u.com/article/r/2018/6381.html
投必得R语言教程,第二讲 R作图-基础-图形参数设置:标题、图例、文字, https://mp.weixin.qq.com/s?__biz=MzU1Mzc3OTIwNg==&mid=2247495531&idx=1&sn=cdd80d4e950ae2b344cf188c68922fa8&chksm=fbef0602cc988f14e93b71bc6fcc2fda782d3ae9a3a67601a6c87756f4ae85bcc5d9c56d9b51&scene=21#wechat_redirect