如何调整 spatstat::plot.ppp 的图例文字并避免 PDF 裁切?
数据阿明
结论
在 plot.ppp() 的 leg.args 中可以调整图例文字。base R 的 legend() 参数里,cex 控制文字大小,pt.cex 控制图例符号大小。如果文字仍被 PDF 页面边界裁切,可以增加 Quarto 图形的宽度或高度。
问题中的示例没有展示实际的 leg.args 调用,因此无法判断为什么 cex 会改变点的大小。请确认 cex 写在 leg.args 里面,而不是作为 plot.ppp() 的其他参数传入:
library(spatstat)
plot(
hamster,
leg.args = list(cex = 0.8, pt.cex = 1)
)
这里,cex = 0.8 会缩小图例文字,pt.cex = 1 则设置图例符号的大小。可根据版面调整这两个数值。如果调用已经是这种形式,但 cex 仍只影响点,请检查 spatstat 版本,以及图例是否由这次绘图调用生成。仅凭当前示例无法确定具体原因。
调整 Quarto 图形尺寸
可以通过 Quarto 代码块选项设置输出图形的宽度和高度。例如:
```{r}
#| fig-width: 7
#| fig-height: 5
plot(
hamster,
leg.args = list(cex = 0.8, pt.cex = 1)
)
```
fig-width 和 fig-height 的单位是英寸。图例靠近绘图区边缘时,可以适当增加宽度;图形整体被页面边界截断时,可增加相应方向的尺寸。调整后检查生成的 PDF,因为放大图形可能会影响页面排版或缩放比例。
注意事项
cex 数值越小,图例文字越小;pt.cex 控制图例中的点符号大小。要修改绘图区里的点大小时,请检查传给绘图函数的点大小参数,避免与 leg.args 中的图例参数混淆。
备注:内容仅供参考。
