我使用lpsolveapi找到了一个很棒的线性编程示例。在R博客上提到过,可以找到原始帖子的链接here。 Rscript可以从Github here下载。
问题是该代码基于ggplot2预版本0.9.1的版本。因此,在运行示例时,错误消息为Error: Use 'theme' instead. (Defunct; last used in version 0.9.1)
。
在CRAN上,建议是:
Error : Mapping a variable to y and also using stat="bin".
With stat="bin", it will attempt to set the y value to the count of cases in each group.
This can result in unexpected behavior and will not be allowed in a future version of ggplot2.
If you want y to represent counts of cases, use stat="bin" and don't map a variable to y.
If you want y to represent values in the data, use stat="identity".
See ?geom_bar for examples. (Defunct; last used in version 0.9.2)
据我所知,代码必须根据更新版本的ggplot2进行重新制定,但那是我遇到的问题。作为我的初学者,我不知道从哪里开始。我尝试不分配给我,我尝试使用stat='bin'
或stat='identity'
。而不是我发布有错误的混乱代码,我宁愿询问是否可以更新过时的文件。
以下是代码的一部分,如果更新,我可以复制到其他部分:
results<-data.frame(cargo=rep(cargo$type, 3),
wagon=as.vector(sapply(train$wagon,
FUN=function(x) rep(x, NROW(cargo)))), solution=get.variables(lpmodel))
r1<-ggplot(results, aes(x=cargo, y=solution, fill=wagon)) +
geom_bar(color='black', position='dodge') +
geom_text(aes(label=solution), size=2.5, position=position_dodge(width=1), vjust=-.4) +
scale_fill_brewer(palette='Set1') +
facet_grid(.~wagon) +
opts(title='Planning result', legend.position='none') +
ylab('Solution (tonnes)')
答案 0 :(得分:3)
试试这个......看起来就像你所提到的那样。
r1<-ggplot(results, aes(x=cargo, y=solution, fill=wagon)) +
geom_bar(color='black', position='dodge', stat='identity') +
geom_text(aes(label=solution), size=2.5, position=position_dodge(width=1), vjust=-.4) +
scale_fill_brewer(palette='Set1') +
facet_grid(.~wagon) +
theme(title=element_text('Planning result'), legend.position='none') +
ylab('Solution (tonnes)')