MLEN
MLEN

Reputation: 2561

Control text size after line break in ggplot2

Is it possible to give different sizes on Stackoverflow and Example in the x label text?

library(ggplot2)
ggplot(iris, aes(x = Sepal.Width, y = Sepal.Length)) + 
  geom_point() + labs(x = 'Stackoverflow\nexample')

Upvotes: 2

Views: 180

Answers (1)

RLave
RLave

Reputation: 8364

Use draw_label() from cowplot:

library(ggplot2)
library(cowplot)

ggplot(iris, aes(x = Sepal.Width, y = Sepal.Length)) + 
  geom_point() +
  xlab("") +
  theme(axis.title.x = element_text(size = 10, # you don't need to define size actually
# margin is important to give you some space on the bottom
                                    margin = margin(t = 10, r = 0, b = 0, l = 0,
                                                    unit = "mm"))) +
  coord_cartesian(clip = "off") +
  draw_label("Stackoverflow", x = 3.25, y = 3.5, size = 15) + 
# play with x,y to center the text
  draw_label("example", x = 3.25, y = 3.25, size = 10)

enter image description here

Upvotes: 1

Related Questions