Como alinhar o texto à esquerda em uma anotação do ggplot2

92

Meu exemplo é:

qplot(mtcars$mpg) + 
  annotate(geom = "text", x = 30, y = 3, label = "Some text\nSome more text")

Como faço para que o texto aqui seja alinhado à esquerda? Para que os 'Alguns se alinhem.

KennyB
fonte

Respostas:

145

hjust = 0faz o que você quiser. h apenas significa justificação horizontal , 0 será justificado à esquerda, 0,5 será centralizado e 1 será justificado à direita.

qplot(mtcars$mpg) +
    annotate(geom = "text", x = 30, y = 3,
             label = "Some text\nSome more text",
             hjust = 0)

Veja também vjusta justificação vertical.

Em ggplot2, esses argumentos estão presentes sempre que as preferências de texto são definidas. Eles funcionam para annotate, geom_textou em element_textao ajustar as opções de tema.

Se você olhar ?geom_text, você pode encontrar opções de cadeia de texto: "left", "middle"ou "right", (para hjust), "top", "center", "bottom"para vjust, e para qualquer um "inward"e "outward"que será sempre ajustar na direção ou para fora do centro.


Este comportamento é semelhante em muitas basefunções gráficos, tais como o adjargumento para par, utilizados por text(), mtext()e title(), que pode ser vector de comprimento 2 para os justificatons horizontais e verticais. Além disso, o hadje padjargumentos para axis()justificações h orizontal a e p erpendicular ao eixo.

Gregor Thomas
fonte