Por que os rótulos dos eixos são muito grandes ao usar tikzDevice e lattice?

Por que os rótulos dos eixos são muito grandes ao usar tikzDevice e lattice?

Estou trabalhando em um artigo que será submetido a uma revista da Elsevier. Odiretrizes oficiaisdeclarar que:

Como regra geral, as letras da arte devem ter tamanho impresso final de 7 pt para texto normal e não inferior a 6 pt para caracteres subscritos e sobrescritos.

Eu uso a combinação knitr + treliça + tikzDevice. Eu configurei as seguintes opções:

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

E meu gráfico é gerado com fig.width=3.5, fig.height=3.5. Recebo o seguinte resultado com uma chamada para xyplot, sem passar nenhuma cexopção:

insira a descrição da imagem aqui

Os rótulos dos eixos são maiores que o texto principal, que normalsizetem 10pt (acho que estou usando a elsarticleclasse document com a 3popção).

Ao abrir um dos tikzarquivos gerados, encontrei diversas declarações de nós como esta:

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

Parece que tikzDeviceaplica um fator de escala de 1,2 aos rótulos dos eixos; estranhamente, este não parece ser o caso dos gráficos produzidos com gráficos básicos.

Alguma idéia do porquê desse comportamento e o que posso fazer para reduzir o tamanho dos rótulos dos eixos para os 7 pontos desejados?

Responder1

Desde que fiz essa pergunta mudei para o ggplot, e com esse pacote obtenho o tamanho que preciso alterando o base_sizeparâmetro do tema:

theme_set(theme_bw(base_size = 7))

Não verifiquei, mas suspeito que algo semelhante possa ser feito com a rede.

Responder2

Estou usando o ggplot também, mas definindo o base_size comolindelofproposta não funcionou para mim. O que funcionou foi definir explicitamente o tamanho da fonte para os rótulos dos eixos:

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

informação relacionada