如何在晶格密度图的面板上添加中值垂直线?

时间:2012-11-19 10:36:52

标签: r lattice

我正在使用长格式的数据框在lattice中创建一个镶板密度图。现在我想在每个面板的中间x值处添加一条垂直线。我在dotplothttp://r.789695.n4.nabble.com/how-to-add-a-vertical-line-for-each-panel-in-a-lattice-dotplot-with-log-scale-td4632513.html)中找到了建议,但这对我不起作用。这是我的代码:

data(Chem97, package="mlmRev")

densityplot(~gcsescore | factor(score), data=Chem97,
        panel=function(...){
          panel.densityplot(...)
          median.values <- median(x) 
          panel.abline(v=median.values, col.line="red") 
        })

错误是:Object x not found。所以我尝试了以下内容:

panel=function(x,...){
          panel.densityplot(...)
       }

当我将x作为参数添加到面板函数时,我收到错误Error using packet 1 (2, 3 etc.). x is missing

出了什么问题?

1 个答案:

答案 0 :(得分:4)

我终于找到了解决方案:

densityplot(~gcsescore | factor(score), data=Chem97,
    panel=function(x,...){
      panel.densityplot(x,...)
      panel.abline(v=quantile(x,.5), col.line="red") 
    })