2

フレーム内のポリゴンと青い点を説明する次のプロット a の上部にある凡例を探しています。

    require(lattice)
    grid<-data.frame(F=rnorm(1000),T=rep(c("A","B"),each=500))
    histogram(~F|T, data=grid, params=c(1,2)
            ,layout=c(2,1), xlab = "",ylab="",as.table=TRUE
            #,par.settings = list(superpose.polygons = list(col=c(4)))
            #,key = list(polygons = list(col=c(4)),space="top",columns=1
            #           ,text = list("text")
            #            )
            #, auto.key = list(polygons = TRUE,title = "Survived", columns = 1)
            ,type="density",breaks=40
            ,panel=function(x,params,...){
               panel.grid()
               panel.histogram(x,...,col=8)     
               lab<-format(params[panel.number()], digits=2, nsmall=2)
               panel.points(params[panel.number()],0,pch=16,col=4)
               panel.text(1, 0.05, labels = lab) 
              })
4

1 に答える 1

0

注意、遅い答え。

これの秘訣は、2 つのテキスト ラベル (バー用とポイント用) がありますが、凡例には 1 つの四角形 (バー) と 1 つのポイントしかないということです。text=引数に 2 つの引数を追加することで、これを機能させることができkey=ます。Latticeコードにリストするのと同じ順序で要素をキーに追加します。

require(lattice)
grid<-data.frame(F=rnorm(1000),T=rep(c("A","B"),each=500))
histogram(~F|T, data=grid, params=c(1,2)
      ,layout=c(2,1), xlab = "",ylab="",as.table=TRUE


      ,key=list(space="top",          #puts key on top of panels
            rectangles=list(col=8),   #draws gray box
            text=list("gray bars"),   #label box
            points=list(col=4,pch=16), #draw blue point
            text=list("blue dots")    #label point
      )


      ,type="density",breaks=40
      ,panel=function(x,params,...){
        panel.grid()
        panel.histogram(x,...,col=8)     
        lab<-format(params[panel.number()], digits=2, nsmall=2)
        panel.points(params[panel.number()],0,pch=16,col=4)
        panel.text(1, 0.05, labels = lab) 
      })
于 2014-05-19T15:17:37.203 に答える