為什麼使用 tikzDevice 和lattice 時軸標籤太大?

為什麼使用 tikzDevice 和lattice 時軸標籤太大?

我正在寫一篇論文,將提交給愛思唯爾期刊。這官方指南聲明:

作為一般規則,藝術品上的文字的成品印刷尺寸應為普通文本 7 磅,下標和上標字符不小於 6 磅。

我使用knitr+lattice+tikzDevice組合。我設定了以下選項:

opts_chunk$set(include=FALSE, error=FALSE, warning=FALSE, echo=FALSE,
dev="tikz", dev.args=list(pointsize=10), fig.align="center")

我的情節是用 產生的fig.width=3.5, fig.height=3.5。我透過呼叫 得到以下結果xyplot,而不傳遞任何cex選項:

在此輸入影像描述

軸標籤比正文大,正文normalsize為 10pt(我想-我正在使用帶有選項elsarticle的文檔類3p)。

當我打開生成的文件之一時tikz,我發現了幾個節點聲明,例如:

\node[text=drawColor,anchor=base,inner sep=0pt, outer sep=0pt, scale=  1.20] at (137.00, 12.04) {Day};

看起來像是tikzDevice對軸標籤應用了 1.2 的比例因子;奇怪的是,使用基礎圖形產生的圖形似乎並非如此。

知道為什麼會出現這種行為,以及我可以採取哪些措施將軸標籤的大小降低到所需的 7pt?

答案1

base_size自從我提出這個問題以來,我已經切換到 ggplot,並且透過該包,我透過更改主題的參數來獲得所需的大小:

theme_set(theme_bw(base_size = 7))

我還沒有檢查過,但我懷疑格子可以做類似的事情。

答案2

我也使用 ggplot,但將 base_size 設定為林德洛夫提議對我沒效。訣竅是明確設定軸標籤的字體大小:

ggplot(...) + theme(axis.title = element_text(size = 10))

相關內容