ggplot中的错误问题:“grid.Call中的错误(”L_textBounds“,as.graphicsAnnot(x $ label),x $ x,x $ y,......”

时间:2011-03-25 13:52:48

标签: r ggplot2

我正在尝试在ggplot中制作一个条形图,我在其中指定要显示哪些标签,强制执行其中一些长度为零的字符串,即“”。但是,我收到了错误

Error in grid.Call("L_textBounds", as.graphicsAnnot(x$label), x$x, x$y,  
: Polygon edge not found (zero-width or zero-height?) 

试图这样做。

以下代码将重现错误。

希望有人能解释为什么我不能像我一样做。

library(ggplot2)

dataset<-matrix(ncol=3,nrow=12)
colnames(dataset)<-c("Score","Action","Bin")
dataset[1:9,1]<-c(1,2,3,-2,7,10,12,3,4)
dataset[1:9,2]<-rep(1,9)
dataset[10:12,1]<-c(-1,-2,-3)
dataset[10:12,2]<-rep(2,3)
dataset[1:12,3]<-as.character(cut(dataset[1:12,1:1],breaks=4))
myDataset<-as.data.frame(dataset)

chosenbreaks<-as.vector(unique(dataset[1:12,3]))
chosenlabels<-as.vector(c(chosenbreaks[1],"","",chosenbreaks[4]))

fullplot<-ggplot(myDataset, aes(Bin, fill=Action)) 
 + geom_bar(position="stack") 
 + opts(axis.text.x = theme_text(angle = 45,size=8)) 
 + scale_x_discrete("test",breaks=chosenbreaks,labels=chosenlabels)

fullplot

提前致谢,

基督教

2 个答案:

答案 0 :(得分:9)

我更新了我的软件包,重新启动了我的机器,突然它运行了。我不知道为什么,但我很高兴它知道有效。非常感谢所有贡献者 - 所以非常棒!

答案 1 :(得分:4)

我在Mac上遇到同样的问题。我不得不使用应用程序字体书删除一些重复的字体。事实是,这些字体的副本已被禁用(它们在大约一年前就引起了NeoOffice的问题)。我不知道为什么会这样。 (注意我删除了我认为这些字体的旧版本--Arial,Times和Palatino是其中的一些。)也许这对这个主题有所启发,但我不知道如何。