在带有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)
```
现在使用dev.args=list(pointsize=18)
```{r fig2, dev.args=list(pointsize=18)}
x <- rnorm(100)
y <- 2*x + rnorm(100)
plot(x,y)
```
现在也使用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)
```
答案 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问题。