正如您在下面的数据中所看到的,某些刻面变量“items”缺少x轴变量“type”的某些级别。例如,“items = 32”没有“type = A”。
我想摆脱x轴上与不存在的“类型”相对应的空格(例如,对于32个案例,输入A类型)。
一些数据(“临时”):
type items value
A 16 6.3
B 16 8.3
C 16 7.9
B 32 7.7
C 32 8.3
C 64 7.9
绘图编码:
library(ggplot2)
ggplot(temp, aes(x = type, y = value, fill = type)) +
geom_bar(stat = "identity") +
facet_grid( . ~ items)
=======================
修改
根据Joran的解决方案,设置scales = "free_x"
正在做我想要的。但是,在项目编号32和64下,条形的宽度变得非常大。请帮助我为所有条形做出宽度。
ggplot(temp, aes(x = type, y = value, fill = type)) +
geom_bar(stat = "identity") +
facet_grid( . ~ items, scales = "free_x")
答案 0 :(得分:5)
只需按照joran和Etienne Low-Décarie提供的说明关闭此旧未回答的问题。请提前投票joran和Etienne Low-Décarie。
另外,请注意Roman Luštrik上面有价值的评论“我希望你有充分的理由这样做。白色空间非常丰富,它让读者了解这些关卡值0(仍然是值)。“
# data
temp <- structure(list(type = structure(c(1L, 2L, 3L, 2L, 3L, 3L), .Label = c("A",
"B", "C"), class = "factor"), items = c(16L, 16L, 16L, 32L, 32L,
64L), value = c(6.3, 8.3, 7.9, 7.7, 8.3, 7.9)), .Names = c("type",
"items", "value"), class = "data.frame", row.names = c(NA, -6L
))
# plot
library(ggplot2)
ggplot(temp, aes(type, value, fill = type)) +
geom_bar(stat = "identity") +
facet_grid( . ~ items, scales = "free_x", space = "free")