Controlando as marcações do eixo e as linhas do eixo separadamente na rede R xyplot

Como posso remover a caixa em torno de umaxyplot, mantendo as marcas de escala da escala do eixo? No espírito da estética gráfica de dados minimalista de Edward Tufte, essas linhas de eixo são "sem tinta de dados" e podem (devem?) Ser "apagadas".

library(lattice)
my.df <- data.frame(x=-10:10)
my.df$y <- my.df$x^2
xyplot(y~x,data=my.df)

Parece que os parâmetros de exibição da treliça (por ex.axis.line$col) controlam as linhas do eixo e os eixos em conjunto:

xyplot(y~x,data=my.df,
       par.settings=list(axis.line=list(col="transparent")))

... que não é o resultado desejado, então não parece que há uma maneira simples de desligar as linhas enquanto sai da caixa.

O melhor que eu consegui fazer foi um hack de força bruta, onde eu construo as marcas de escala manualmentepanel.segments:

at.x=pretty(c(-10,10))
at.y=pretty(c(0,100))
xyplot(y~x,data=my.df,
       par.settings=list(axis.line=list(col="transparent")),
       scales=list(x=list(at=at.x,labels=at.x),
       y=list(at=at.y,labels=at.y)),
       panel=function(...){
           panel.xyplot(...)
           panel.segments(x0=at.x,x1=at.x,y0=-4,y1=-2)
           panel.segments(x0=-11.5,x1=-11,y0=at.y,y1=at.y)
       }
       )

Isso está próximo do resultado desejado, mas há um pouco de necessidade de ajustes para que as marcas de escala tenham uma duração razoável e compensem uma distância "agradável" dos pontos de dados. Esses valores não serão traduzidos de um gráfico para o próximo. Além disso, observe que os rótulos dos eixos agora estão muito longe das marcas de escala. Tenho certeza de que há uma maneira de reduzir esse preenchimento, mas isso só tornaria o código ainda mais feio e menos portátil.

Então, como se pode suprimir apenas as linhas que compõem a "caixa" ao redor da área de plotagem, deixando as marcas de escala e os rótulos dos eixos intactos? Pontos de bônus se essa abordagem também puder ser usada para suprimir algumas, mas não todas as linhas (por exemplo, deixe as linhas esquerda e inferior, mas suprima as linhas superior e direita).

questionAnswers(2)

yourAnswerToTheQuestion