在使用R中的tikzDevice绘图时,如何最小化图形周围的空白?

3
我使用R中的tikzDevice来编写tikz代码,以在LaTeX文档中放置绘图。我发现绘图周围的空白,即边距,通常过多。
下面是将R绘图导出为tikz代码的最小示例:
x <- seq(30, 70)
probs <- dbinom(x, size=100, prob=0.5)
library(tikzDevice)
tikz('binomial.tex', standAlone = T, width=3, height=2.5)
barplot(names.arg=x, probs, cex.names=0.6, cex.axis=0.6)
dev.off()

运行pdflatex binomial.tex会生成一个小的pdf文件,如您所见,边缘有很多空白。理想情况下,我希望在x轴点标签下面或y轴点标签左侧等位置没有任何空白。

顺便提一下,在将其插入LaTeX文档时,我将始终在上面的tikz命令中使用standAlone=F,然后在文档中使用\input{binomial}。通过\framebox{\input{binomial}}可以轻松验证,这两种方式的空格没有区别。此外,par(xaxs='i')没有产生任何影响。

是否有任何方法可以从这些图的边缘中删除所有空白?

2个回答

2

tikz命令之后,但在barplot之前尝试使用op <- par(cex=0.5)。您还可以通过添加cex.main= ...、cex.axis= ...或cex.lab= ...来修改标题、轴注释和轴标签的大小,分别乘以cex


1
barplot 之前添加以下内容:
op <- par(mar = rep(1, 4))

其中1表示边距,从轴开始计算,所以0会去掉刻度。尝试几个值,对于你的图表来说1.8是可以的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接