Como faço para alinhar à esquerda um título com uma quebra de linha?

Nome do usuário

Estou fazendo um gráfico em ggplot2 e quero economizar espaço no título de quebra de lib do gráfico alinhando-o à esquerda. O problema é que usar hjustnão funciona direito.

library(ggplot2)

chart <- ggplot(
  data = cars,
  aes(
    x = speed,
    y = dist
  )
) +
  geom_point() +
  labs(
    title = "Here is a very long title that will need a\nlinebreak here",
    subtitle = "This subtitle will also have\na linebreak"
  ) +
  theme(
    plot.title = element_text(
      hjust = -0.1
    )
  )
chart

ggsave(
  filename = "~/Desktop/myplot.png",
  plot = chart,
  # type = "cairo",
  height = 4,
  width = 6,
  dpi = 150)

Isso produz um gráfico ... insira a descrição da imagem aqui

Gostaria que "Aqui" e "quebra de linha" se alinhassem com o título do eixo y. Isso é possível apenas com ggplot2?

Tung

Você pode usar geom_textjunto com o coord_cartesian(clip = "off")qual permite desenhar o elemento do gráfico fora do painel do gráfico

library(ggplot2)

ggplot(
  data = cars,
  aes(x = speed,
      y = dist)) +
  geom_point() +
  labs(subtitle = "This subtitle will also have\na linebreak") +
  geom_text(
    x = 1,
    y = 160,
    inherit.aes = FALSE,
    label = "Here is a very long title that will need a\nlinebreak here",
    check_overlap = TRUE,
    hjust = 0,
    size = 6
  ) +
  coord_cartesian(clip = "off") +
  theme(plot.margin = unit(c(4, 1, 1, 1), "lines"))

Outra forma é usar a ggarrangepartir do eggpacote que tem o topargumento que pode ser usado para o título

chart <- ggplot(
  data = cars,
  aes(
    x = speed,
    y = dist)) +
  geom_point() +
  labs(subtitle = "This subtitle will also have\na linebreak")


library(grid)
# devtools::install_github('baptiste/egg')
library(egg)
#> Loading required package: gridExtra

ggarrange(chart, 
          ncol = 1,
          top = textGrob(
            "Here is a very long title that will need a\nlinebreak here",
            gp = gpar(fontface = 1, fontsize = 14),
            hjust = 0,
            x = 0.01)
          )

Criado em 18/09/2018 pelo pacote reprex (v0.2.1.9000)

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Como faço para usar uma quebra de linha no título do rodapé de um UITableView?

Como faço para alinhar à esquerda o título de uma barra de navegação no Xcode?

Como faço para alinhar um widget TextFormField e Text dentro de uma linha no Flutter?

Como faço para adicionar uma quebra de linha após um menu suspenso

Como faço para incorporar uma quebra de linha em um aplicativo da web? (HTML, CSS)

Como faço para alinhar a borda esquerda do meu gráfico flutuante com a linha vertical mais à esquerda?

Android: como alinhar um texto à esquerda com a barra de ferramentas do texto do título?

Como faço para usar uma função ORACLE REGEX para remover todos os caracteres de quebra de linha à esquerda e à direita e espaços?

Como faço para alinhar um texto à esquerda e à direita?

Como faço para conseguir um título no meio de uma borda com HTML e CSS

Como faço para obter uma linha vertical de altura total com um rótulo de legenda em holoviews + bokeh?

SwiftUI: Como alinhar um NavigationBarItem com um título de navegação de título grande?

Como adicionar uma quebra de linha a um título de postagem?

Como alinhar o texto com 2 linhas com um texto de uma linha trêmulo

Use awk para grep para encontrar um padrão com uma quebra de linha

Usando xlsxwriter para alinhar à esquerda de uma linha

como alinhar o texto ao centro do texto com espaço e quebra de linha

Como deletar uma linha de um arquivo de texto com quebra de linha e copiar o conteúdo para outro arquivo?

Como faço para atualizar uma linha de dados com um clique de botão

Como alinhar widgets à esquerda, centro, direita na vibração de widget de uma única linha

Adicione uma quebra de linha após o título de um título de legenda horizontal

Adicione uma quebra de linha após o título de um título de legenda horizontal

Como permitir apenas uma quebra de linha com o Laravel

Como alinhar uma imagem lado a lado com um elemento de título?

Como alinhar à esquerda a 2ª linha de um texto se o alinhamento inicial do texto estiver no centro

Como faço para colocar uma quebra de linha em p: tooltip

Como faço para dividir uma string por quebra de linha?

Como faço para alinhar Glyphs ao longo da linha de base com Freetype?

Como faço para alinhar uma imagem com o pdfmake?