1
我用以下方法制作facet_grid情節:限制類別上刻面數的小情節
sample <- read.csv('sample.csv')
ggplot(sample, aes(category, count)) + geom_bar() + facet_grid(. ~ parent_id)
我的數據在下面的方式構造:
id,parent_id, category, count
1, 21, C1, 4
2, 21, C2, 7
3, 21, C3, 4
4, 22, D1, 28
5, 22, D2, 20
6, 22, D3, 0
7, 22, D5, 1
8, 22, D6, 4
9, 22, D7, 1
10, 23, E1, 17
11, 23, E2, 33
12, 23, E3, 31
當我做的這一個方面的情節,它看起來像這樣:
我想要的是限制每個方面的類別數量,因此我只在第一個方塊(等)上顯示C1, C2, C3
。有沒有一種方法可以限制這裏顯示的類別數量?
這裏是dput(sample)
輸出和我的繪圖命令,讓自己的形象可以很容易地複製:
sample <-
structure(list(id = 1:12, parent_id = c(21L, 21L, 21L, 22L, 22L,
22L, 22L, 22L, 22L, 23L, 23L, 23L), category = structure(1:12, .Label = c(" C1",
" C2", " C3", " D1", " D2", " D3", " D5",
" D6", " D7", " E1", " E2", " E3"), class = "factor"),
count = c(4L, 7L, 4L, 28L, 20L, 0L, 1L, 4L, 1L, 17L, 33L,
31L)), .Names = c("id", "parent_id", "category", "count"), class = "data.frame", row.names = c(NA,
-12L))
ggplot(sample, aes(category, count)) + geom_bar() + facet_grid(. ~ parent_id)
謝謝!這非常有用。有沒有一種方法來固定寬度,使所有的鋼筋具有相同的厚度? 'geom_bar(width = .5)'似乎與總面寬度成正比,並且與條形本身不成比例。 – djq
@celenius看到我更新的回答 –
哦,太棒了!謝謝。我必須花更多時間閱讀和理解'facet_grid()' – djq