我正在使用gplots中的textplot()在data.frame中将一些文本写入PDF设备(也尝试使用PerformanceAnalytics中的版本)。我的par()选项是默认选项,除了我更改字体/边距(CM是我在网站配置文件中定义的系列)
par( family = "CM" , omi = rep( .5 , 4 ) )
我正试图让“Plot”列保持左对齐。这是我失败的尝试......注意文本中的重叠
textplot( tableOfContents , show.rownames = FALSE , show.colnames = TRUE , hadj = 0 )
右对齐的工作正常:
textplot( tableOfContents , show.rownames = FALSE , show.colnames = TRUE , hadj = 1 )
修改的
如果其他人在texplot中正在努力对齐,我建议看看我写的这个修改版本:
https://gist.github.com/1487363
的 EDIT2
您可能想要删除我的cex = 1修复程序。经过一些阅读后,我明白函数参数中的cex应该应用于par(cex),我认为这是混乱和过度工程,但似乎是一个R标准实践
答案 0 :(得分:7)
查看源代码,我认为最好的方法是略微修改,以便x位置适应hadj
,而不是保持不变。向开发人员提出此更改可能是值得的。以下是您可以下载修改版本的要点:
https://gist.github.com/1482973
然后只需使用source()
在R中获取它,您应该可以使用正常的函数。
source('textplot.R')
n = 10
data = data.frame(Section=1:n, Plot=replicate(n, paste(LETTERS[sample(26, sample(20), replace=T)], collapse='')), Page=sort(rep(1:4, len=n)), stringsAsFactors=FALSE)
textplot(data, show.rownames = FALSE, show.colnames = TRUE, hadj=0)