r решетка - неправильное положение горизонтальной линии после bwplot

Я могу сделать это без проблем:

boxplot(coef ~ habitat, data = res)
abline(h = 0, col = "green")

Но когда я использую решетку, горизонтальная линия неуместна:

bwplot(coef ~ habitat, data = res)
abline(h = 0, col = "green")

введите здесь описание изображения

Вместо этого я попытался использовать panel.abline, но это помещает зеленую линию поверх изображения.


person Tomas    schedule 16.08.2013    source источник


Ответы (1)


Используйте функцию панели; упорядочить содержащиеся функции в том порядке, в котором вы хотите добавить части; используйте ..., чтобы избежать необходимости знать / управлять всеми параметрами функции панели

bwplot(coef ~ habitat, data = res, panel=function(...) {
    panel.abline(h=0, col="green")
    panel.bwplot(...)
})

Понятие панельной функции имеет больше смысла, когда панелей несколько, например,

res = data.frame(coef=rnorm(99) + (-1):1, habitat=sample(letters[1:3], 99, TRUE),
                 grp=c("W", "X", "Y"))
bwplot(coef ~ habitat | grp, data = res, panel=function(x, y, ...) {
    ## green line at panel-median y value
    panel.abline(h=median(y), col="green")
    panel.bwplot(x, y, ...)
})
person Martin Morgan    schedule 16.08.2013
comment
Спасибо, Мартин, работает как шарм! Это очень странный синтаксис, я не уверен, что буду в решетке :-) - person Tomas; 16.08.2013