这是一个可重现的示例:
我首先基于此示例创建一个函数https://github.com/hadley/ggplot2/wiki/labeller然后提供数据和图表
label_wrap_gen <- function(width = 100) {
function(variable, value) {
lapply(strwrap(as.character(value), width=width, simplify=FALSE),
paste, collapse="\n")
}
}
Data <- data.frame(Language=c("C++","C++","C++", "Java","Java","Java","Java", "PythonhasaREALLYWAYTOOlonglabel"),
Files=c(400, 210, 35,55,330,220,213,76),
Difficulty=c("a","b","c","d","e","f","g","h"),
stringsAsFactors=FALSE)
g <- ggplot(Data,aes(x=Difficulty,y=Files,fill=Difficulty)) #replaced fill=feetype,
h <- g + geom_bar(stat="identity",position="dodge") + facet_grid(.~ Language, scales = "free_x", space="free",labeller=label_wrap_gen(width=.1))
h
它会生成一个带有“PythonhasaREALLYWAYTOOlonglabel”标签的 ggplot 图,该图通常会超出图的边缘。
我已经尝试使用geom_bar
以下链接中的各种宽度,但也无济于事:
如何增加 ggplot2 中条形图中条形之间的空间?
这里有什么帮助吗?非常感谢。