【发布时间】:2013-07-12 03:33:07
【问题描述】:
这是一个可重现的例子:
我先根据这个例子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 宽度,但也无济于事:
How to increase the space between the bars in a bar plot in ggplot2?
这里有什么帮助吗? 非常感谢。
【问题讨论】:
-
我知道这不是您要查找的内容,但实际上,您可能需要考虑使用缩写和/或图例,并在文档的其他地方定义这些缩写。
-
是的,也许就是这样……非常感谢。