2015-02-02 3 views
0

Я создаю план уровня из матрицы. У меня есть другая матрица того же размера, что и первая, с метками. Я хотел бы добавить ярлыки к сюжету - квадрат, начертивющий цвет для значения, должен также показать ярлык. Есть ли способ сделать это? Заранее спасибо.Добавить ярлыки в levelplot

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

library(lattice) 

value <- matrix(data=2^seq(from=0.5,to=2,length.out=9),ncol=3,nrow=3) 

colnames(value)<-c("wheat","barley","rice") 

rownames(value)<-c("1970","1980","1990") 

source <- matrix(data=c("A","A","B","A","B","C","C","B","C"),ncol=3,nrow=3) 

levelplot(value,xlab="year",ylab="comodity",main="some plot") 
+1

Просьба [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a -great-r-воспроизводимый пример) и что вы подразумеваете под «добавлением меток». Вы имеете в виду метки 'contourplot'? Что-то другое? –

ответ

3

Вот одна возможность:

library(lattice) 
library(latticeExtra) 

dat <- data.frame(expand.grid(x = c(1970, 1980, 1990), y = c("wheat","barley","rice")), 
       value = 2^seq(from=0.5,to=2,length.out=9), source = c("A","A","B","A","B","C","C","B","C")) 

Obj <- 
    levelplot(value ~ x+y, data = dat, xlab = "year", ylab = "comodity", main = "some plot") + 
    xyplot(y ~ x, data = dat, 
    panel = function(y, x, ...) { 
      ltext(x = x, y = y, labels = dat$source, cex = 1, font = 2, 
      fontfamily = "HersheySans") 
    }) 

print(Obj) 

enter image description here

+0

спасибо! Я не знал о решетке. – user2345448

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