Graphics 在晶格条形图中添加线条和标签[R]

Graphics 在晶格条形图中添加线条和标签[R],graphics,r,lattice,Graphics,R,Lattice,关于在lattice中自定义条形图,我有两个问题。我尝试向条形图添加标签,分别编辑比例,但我的代码不起作用。我做错了什么?应该有一些值,包括“%” 第二个问题是如何在条形后面的打印区域的顶部和底部之间绘制线,并位于打印的比例值处。谢谢你的建议和帮助,塞巴斯蒂安 代码如下: library(lattice) library(plyr) data(postdoc, package="latticeExtra") colnames(postdoc) <- c("Legendtext 1", "2

关于在lattice中自定义条形图,我有两个问题。我尝试向条形图添加标签,分别编辑比例,但我的代码不起作用。我做错了什么?应该有一些值,包括“%”

第二个问题是如何在条形后面的打印区域的顶部和底部之间绘制线,并位于打印的比例值处。谢谢你的建议和帮助,塞巴斯蒂安

代码如下:

library(lattice)
library(plyr)
data(postdoc, package="latticeExtra")
colnames(postdoc) <- c("Legendtext 1", "2", "3", "4", "5")
colors <- c(rgb(166,27,30,maxColorValue = 255),                             
        rgb(192,80,77,maxColorValue = 255),
        rgb(24,65,83,maxColorValue = 255),
        rgb(60,143,167,maxColorValue = 255),
        rgb(130,184,208,maxColorValue = 255))
colorset <- simpleTheme(col=colors,                                          
                    border="white")
data.p <- prop.table(postdoc, margin=1)
data <- data.p * 100
pl <- barchart(data,
           par.settings = colorset,                                      
           box.ratio = 1,                                                
           xlab = " ",                                                   
           panel = function(...) {   # Code for panel function by rcs (http://stackoverflow.com/questions/3220702/display-values-in-stacked-lattice-barchart-r) - thank you very much!
             panel.barchart(...) 
             tmp <- list(...)
             tmp <- data.frame(x=tmp$x, y=tmp$y)
             # calculate positions of text labels                        
             df <- ddply(tmp, .(y),
                         function(x) {
                           data.frame(x, pos=cumsum(x$x)-x$x/2)
                         })
             panel.text(x=df$pos, y=df$y,                                
                        label=sprintf("%.0f", df$x),                     
                        cex=0.7, col="white")
             panel.axis(side = c("bottom"),
                        at = list(0, 20, 50, 75, 100),
                        labels = list("0%", "25%", "50%", "75%", "100%"),
                        ticks = TRUE)       
           },
           auto.key=list(columns=5, space="bottom",                          
                         cex=0.8, size=1.4, adj=1,
                         between=0.2, between.colums=0.1, 
                         size = 1.3, points = FALSE, rectangles = TRUE))
库(晶格)
图书馆(plyr)
数据(博士后,package=“latticeExtra”)

colnames(博士后)问题1:以下内容适合我(
half=FALSE

问题2:在面板函数中的
panel.barchart()
之前添加对
panel.grid
(或
panel.abline
)的调用:

panel.grid(h=FALSE, v=-1)

非常感谢你!!我使用panel.abline,因为它包含更多编辑图形参数的可能性。使用scales参数代替panel.axis对我来说终于更好了,因为标签应该在打印区域之外,而且我在使用clip和viewport时遇到了一些问题。你们的帮助对我完成图表和了解晶格非常重要。再次感谢!
panel.grid(h=FALSE, v=-1)