使用R Markdown增加KnitR中轴标签的大小

时间:2014-02-06 20:33:52

标签: r graphics knitr

在带有R Markdown的KnitR中,我可以使用dev.args=list(pointsize=18)pointsize参数传递给图形设备。

这会增加绘图中点的大小,以及绘图周围的空间量,但它似乎不会影响轴标签的大小。似乎我也需要使用像par(cex.axis=1.5, cex.lab=1.5)这样的东西。

这是预期的吗?

以下是生成图像的三个示例代码块:

首先是默认值:

```{r fig1}
x <- rnorm(100)
y <- 2*x + rnorm(100)
plot(x,y)
```

defaults

现在使用dev.args=list(pointsize=18)

```{r fig2, dev.args=list(pointsize=18)}
x <- rnorm(100)
y <- 2*x + rnorm(100)
plot(x,y)
```

using pointsize=18

现在也使用par(cex.axis=1.5, cex.lab=1.5)

```{r fig3, dev.args=list(pointsize=18)}
par(cex.axis=1.5, cex.lab=1.5)
x <- rnorm(100)
y <- 2*x + rnorm(100)
plot(x,y)
```

pointsize=13 and cex.axis=1.5, cex.lab=1.5

1 个答案:

答案 0 :(得分:2)

不是无休止地弄乱par(cex.blah),而是可以考虑矢量图形而不是光栅图形。例如,您可以使用SVG设备,并在没有质量损失的情况下缩放绘图。

```{r fig4, dev='svg', fig.width=6, fig.height=6, out.width='600px'}
x <- rnorm(100)
y <- 2*x + rnorm(100)
par(mar = c(4, 4, .1, .1))
plot(x,y)
```

更新:对于使用png设备的原始问题,pointsize参数未传递给录制设备。我在fixed(&gt; = v1.5.22)中遇到了development version问题。