Tôi đã đặt câu hỏi HERE về sắp xếp lưới và nhận được phản hồi tuyệt vời. Tôi muốn giảm không gian giữa các ô hiện tại nhưng bị lỗi. Trước tiên, tôi trình bày mã hoạt động và sau đó là mã lỗi (những gì tôi đã thử). Tôi thực sự không thể tìm thấy grid.arrange
và luôn giả sử nó đến từ gridExtra
nhưng tôi có thể không chính xác.giảm khoảng cách giữa các ô lưới. Các ô xếp kề
nên 2 phần:
- Làm thế nào tôi có thể giảm khoảng cách giữa các lô với lưới sắp xếp
- Tôi có thể tìm tài liệu ở đâu về
grid.arrange
(Baptiste Tôi biết bạn duy trì gridExtra vì vậy hãy sửa suy nghĩ hoặc sử dụng của tôi về gói nếu tôi không sử dụng nó theo cách nó được dự định.)
Tốt đang không gian xấu
require(ggplot2);require(gridExtra)
A <- ggplot(CO2, aes(x=Plant)) + geom_bar() +
coord_flip() + ylab("")
B <- ggplot(CO2, aes(x=Type)) + geom_bar() +coord_flip()
gA <- ggplot_gtable(ggplot_build(A))
gB <- ggplot_gtable(ggplot_build(B))
maxWidth = grid::unit.pmax(gA$widths[2:3], gB$widths[2:3])
gA$widths[2:3] <- as.list(maxWidth)
gB$widths[2:3] <- as.list(maxWidth)
grid.arrange(gA, gB, ncol=1)
đang Xấu (thử của tôi)
require(ggplot2);require(gridExtra)
A <- ggplot(CO2, aes(x=Plant)) + geom_bar() +
coord_flip() + ylab("") + theme(plot.margin= unit(1, "cm"))
B <- ggplot(CO2, aes(x=Type)) + geom_bar() +coord_flip()
gA <- ggplot_gtable(ggplot_build(A))
gB <- ggplot_gtable(ggplot_build(B))
maxWidth = grid::unit.pmax(gA$widths[2:3], gB$widths[2:3])
gA$widths[2:3] <- as.list(maxWidth)
gB$widths[2:3] <- as.list(maxWidth)
grid.arrange(gA, gB, ncol=1)
Lỗi:
Error in `[.unit`(theme$plot.margin, 2) :
Index out of bounds (unit subsetting)