2016-03-18 41 views
5

bạn có thể thiết lập vị trí của các huyền thoại trong khu vực âm mưu, nhưggplot2: thay đổi vị trí strip.text trong facet_grid cốt truyện

... + theme(legend.justification=c(1,0), legend.position=c(1,0)) 

Có một cách dễ dàng tương tự để thay đổi vị trí của văn bản dải (hoặc mức độ yếu tố trong âm mưu nhóm)

library(reshape2); library(ggplot2) 

sp <- ggplot(tips, aes(x=total_bill, y=tip/total_bill)) + geom_point() + 
    facet_grid(. ~ sex) 

sp 

enter image description here

(http://www.cookbook-r.com/Graphs/Facets_%28ggplot2%29/)

trong mạng Tôi sẽ sử dụng một cái gì đó như strip.text = levels (dat $ Y) [panel.number()] và panel.text (...), nhưng cũng có thể có cách dọn dẹp hơn ...

thx, Christof

+2

bạn chỉ có thể sử dụng geom_text để thêm văn bản bất cứ nơi nào bạn muốn trên đồ thị của bạn – MLavoie

+0

MLavoie có, thx, nhưng làm thế nào để tôi có được strip.text và diện tích lô (trong mạng một cái gì đó giống như panel.number () và current.panel.limits()) ... Tôi muốn tự động hóa điều này và không cần nó cho ví dụ chính xác này, nơi tôi biết strip.text và các vị trí. – ckluss

+1

Nếu bạn đặt giới hạn 'scale_x_continuous' theo cách thủ công, bạn có thể dự đoán vị trí văn bản sẽ giảm và dựa trên số ký tự bạn có thể bù để điều chỉnh vị trí ngang. –

Trả lời

4

Dưới đây là một cách tiếp cận:

ggplot(tips, aes(x = total_bill, y = tip/total_bill)) + 
    geom_point() + 
    facet_grid(. ~ sex) + 
    geom_text(aes(label = sex), x = Inf, y = Inf, hjust = 1.5, vjust = 1.5) + 
    theme(strip.background = element_blank(), 
     strip.text = element_blank()) 

Tuy nhiên, đây không phải di chuyển strip.text, thay vào đó, thêm một yếu tố geom_text và tắt strip.backgroundstrip.text, nhưng tôi nghĩ nó achiev es kết quả mong muốn.

Plot

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