Existe uma maneira fácil de aumentar o espaço entre o título do gráfico e a área do gráfico abaixo dele (a caixa com os dados). Da mesma forma, eu prefiro ter algum espaço entre o título do eixo e os rótulos dos eixos.
Em outras palavras, há uma maneira de "mover o título um pouco para cima, o título do eixo y um pouco para a esquerda e o título do eixo x um pouco para baixo"?
"\n"
caracteres nos títulos para forçar novas linhas.Respostas:
Você pode ajustar as margens do gráfico com
plot.margin
intheme()
e mover os rótulos dos eixos e o título com ovjust
argumento deelement_text()
. Por exemplo :library(ggplot2) library(grid) qplot(rnorm(100)) + ggtitle("Title") + theme(axis.title.x=element_text(vjust=-2)) + theme(axis.title.y=element_text(angle=90, vjust=-0.5)) + theme(plot.title=element_text(size=15, vjust=3)) + theme(plot.margin = unit(c(1,1,1,1), "cm"))
lhe dará algo como isto:
Se quiser mais informações sobre os diferentes
theme()
parâmetros e seus argumentos, basta entrar?theme
no prompt R.fonte
grid::units
para fazer este trabalho para oplot.margin
argumento. Acontece que você deve fornecer um valor numérico de comprimento 4 paraunits
. É uma pena que ox
argumento paraunits
não seja reciclado de alguma forma. Além disso, você provavelmente já sabe disso, mas vale a pena observar / atualizar queopts
agora está obsoleto na última versão do ggplot2 (0.9.2+), substituído portheme
, comotheme_text
agora é substituído porelement_text
.t, r, b, l (To remember order, think trouble).
top
,right
,bottom
,left
.margin(t, r, l, b)