《R语言实战》自学笔记17-图形文本标注

Python046

《R语言实战》自学笔记17-图形文本标注,第1张

数据准备

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

下标出界:可以理解为你跑的位置已经超过了你数据的最大界线了,比如说,你的数据只有3个因素,但是你代码要获取四个因素,那就算是“下标出界”了。当遇到“下标出界”报错时,你可以从几个方面去检查一下:1、你的行名或列名有没有超过或少于你数据的行数(我自己就是数据出错了,前面处理时弄错符号,导致变成空数据,在运行后面代码时就“下标出界”了)2、你的行名、列名名称有没有写错,比如metadata写成matadata3、上一个包导出来的文件格式是否有问题,比如txt或者xls。解决方案:把txt的内容复制到xls,这里可以选择性粘贴。再复制到新的txt,就可以完美解决