2011-12-22 3 views
1

Good Day Все,Как добавить текст к решетке каркасному в R

Я хочу, чтобы добавить текст, плавающий в моем каркасном участке и я достаточно запутан. Я, конечно, можно добавить текст в качестве заголовка (например, основной = «Hello World»), но я не хотел бы иметь свой конкретный текст в названии

Вот пример каркасный:

library(lattice) 
    #set up some simplified data 
    x <- seq(-.8, .8, .1) 
    y <- seq(-.8, .8, .1) 
    myGrid <- data.frame(expand.grid(x,y)) 
    colnames(myGrid) <- c("x","y") 
    myGrid$z <- myGrid$x + myGrid$y 

    wireframe(
    myGrid$z ~ myGrid$x * myGrid$y, 
    xlab="X", ylab="Y", zlab="Z", 
    scales = list(z.ticks=5, arrows=FALSE, col="black", font=3, tck=1) 
) 

Если бы я хотел добавить «Hello World» в этом сюжете, плавающем где-нибудь, как бы я это сделал?

ответ

1

Отменить функцию панели и добавить текст с помощью grid.text.

wireframe(
    myGrid$z ~ myGrid$x * myGrid$y, 
    xlab="X", ylab="Y", zlab="Z", 
    scales = list(z.ticks=5, arrows=FALSE, col="black", font=3, tck=1), 
    panel = function(...) 
    { 
     panel.wireframe(...) 
     grid.text("some text", 0, 0, default.units = "native") 
    } 
) 
+0

Если я правильно понимаю это, «какой-то текст» будет отображаться внутри самого графика. Есть ли способ заставить его плавать за пределами графика? – user918967

+0

Вы можете отключить привязку текста к панели с помощью 'trellis.par.get (" clip ")'. –

2

В качестве альтернативы можно добавить текст после того, как вы построены ваш каркасный с

grid::grid.text("some text", x=unit(0.7, "npc"), y=unit(0.8, "npc")) 

unit функция позволяет указать расположение текста. Если вы используете "npc" в качестве своего устройства, общая ширина и высота вашего графика равны 1. Таким образом, приведенный выше пример отобразит ваш текст в верхнем правом углу, а x=y=unit(0.5, "npc") построит его в центре.

 Смежные вопросы

  • Нет связанных вопросов^_^