2015-01-11 21 views
6

Tôi có hai dòng trong chú giải của mình. Làm cách nào để tạo một dòng chữ đậm, màu xanh dương và phông chữ lớn và một dòng với phông chữ nhỏ, màu đỏ và in nghiêng?r ggplot2: các kích thước phông chữ khác nhau trong chú thích

library(ggplot2) 
library(gridExtra) 
p <- qplot(data = mtcars, wt, mpg) 
print(arrangeGrob(p, legend = 
    textGrob("large font size colour blue bold\n small font size colour red italic", 
      rot = -90, vjust = 1))) 

Cảm ơn sự giúp đỡ của bạn.

Trả lời

10

Bạn cần phải chia văn bản của bạn thành hai textGrob s:

library(ggplot2) 
library(gridExtra) 
p <- qplot(data = mtcars, wt, mpg) 
t1 <- textGrob("small font size colour red italic", 
       gp = gpar(fontsize = 12, col = 'red', fontface = 'italic'), 
       rot = -90, vjust = 1) 
t2 <- textGrob("large font size colour blue bold", 
       gp = gpar(fontsize = 20, col = 'blue', fontface = 'bold'), 
       rot = -90, vjust = 1) 
print(arrangeGrob(p, t1, t2, widths = c(9/10, 1/20, 1/20), nrow = 1)) 

enter image description here

4

Một giải pháp sử dụng expressionatop:

p <- qplot(data = mtcars, wt, mpg) 
print(arrangeGrob(p, legend= 
     textGrob(expression(atop("large font size colour blue bold\n", atop(italic("small font size colour red italic")))), 
     rot = -90, vjust = 1, gp=gpar(fontsize=16,fontface="bold")))) 

enter image description here

+0

OP cần màu sắc thay đổi, quá. – hrbrmstr

+0

@hrbrmstr Xin lỗi, tôi đã bỏ lỡ điều đó. Tôi nghĩ rằng việc thêm các màu khác nhau là không thể trong giải pháp của tôi. – Jaap

Các vấn đề liên quan