Right align rotated axis title in ggplot2

前端 未结 1 1143
故里飘歌
故里飘歌 2020-12-19 16:21

How do I right-align the Y-axis title (\"Species\") with the axis labels (the three species names), such that the axis title is close to the gray panel? hjust d

相关标签:
1条回答
  • 2020-12-19 16:47

    You can use geom_text together with clip = "off" inside coord_flip() which will allow drawing plot element outside of the plot panel. Obviously you will have to play around with x and y to get the desired output with this manual method

    library(ggplot2)
    
    p <- ggplot(iris,
           aes(x = Species,
               y = Sepal.Width)) +
      geom_boxplot() +
      labs(x = NULL,
           y = "Sepal Width") +
      coord_flip(clip = "off") + # add clip = off here
      theme(axis.title.y = element_text(angle = 0, hjust = 0))
    
    p +
      # add axis title here
      geom_text(
        x = 3.5,
        y = 1.85,
        inherit.aes = FALSE,
        label = "Species",
        check_overlap = TRUE,
        hjust = 1,
        fontface = 'bold',
        size = 5
      ) +
      theme(plot.margin = unit(c(1, 1, 1, 2), "lines"))
    

    Created on 2018-10-27 by the reprex package (v0.2.1)

    0 讨论(0)
提交回复
热议问题