Изменение цвета определенных строк с помощью tableGrob/grid.arrange

Я видел, что вы можете изменить цвет чередующихся строк и столбцов, используя h.odd.alpha и т. д. Мне интересно, есть ли способ изменить цвет только определенных строк?

Меня попросили сделать отчеты, включающие таблицы данных (пожалуйста, не ссылайтесь на sweave или Knitr, потому что я уже знаю об этих пакетах), однако они хотят, чтобы таблицы были представлены горизонтально, однако, поскольку имеется много точек данных, это означает, что таблица превышает размеры страница формата А4. Я нашел способ разделить свою таблицу так, чтобы она отображала половину данных выше и половину ниже. Таблица, которую я сделал, имеет 3 строки (которые меняются на 6 строк, когда я объединяю две половины), поэтому, чтобы было действительно очевидно, какие строки одинаковы, я хотел бы добавить цвет, чтобы подчеркнуть это.

Вот мой код для создания таблицы (которая затем сохраняется как изображение для отображения в документе)

Mdates<-c("08Q1", "08Q2", "08Q3", "08Q4", "09Q1", "09Q2", "09Q3", "09Q4", "10Q1", "10Q2", "10Q3", "10Q4", "11Q1", "11Q2", "11Q3","11Q4", "12Q1", "12Q2", "12Q3", "12Q4", "13Q1", "13Q2", "13Q3", "13Q4", "14Q1" ,"14Q2")
Nu<-c(79160.56,  91759.73,  91186.48, 106353.82,  70346.47 , 80279.15,  82611.60, 131392.72,  93798.99, 105944.78,103913.13, 154530.69, 110157.40, 117416.09, 127423.42, 156752.00, 120097.81, 121307.75, 115021.12, 150657.83,113711.53, 115353.14, 112701.98, 154319.18, 116803.54, 118352.54)
Arimafit<-c(78272.71 , 86726.90,  90593.16, 100364.14,  81288.35,  81119.34 , 80217.01,  98878.31  ,87290.88, 106406.20,107180.51, 142035.06 ,107488.32, 124546.33, 118618.58, 175973.84, 113719.50 ,131377.98, 126586.05, 155147.44, 110674.34, 121228.03, 116329.86, 149380.53, 113957.98, 122351.76)
library(gridExtra)
png("table2.png",height=150,width=710)
tb1<-c(head(Mdates,((length(Mdates)+1)/2)),head(prettyNum(round(Nu,digits=0),big.interval=3L,big.mark=","),((length(Mdates)+1)/2)),head(prettyNum(round(Arimafit,digits=0),big.interval=3L,big.mark=","),((length(Mdates)+1)/2)))
tb2<-c(tail(Mdates,((length(Mdates)-1)/2)),tail(prettyNum(round(Nu,digits=0),big.interval=3L,big.mark=","),((length(Mdates)-1)/2)),tail(prettyNum(round(Arimafit,digits=0),big.interval=3L,big.mark=","),((length(Mdates)-1)/2)))
tb3<-matrix(c(tb1,tb2),nrow=6,byrow=TRUE)
rownames(tb3)<-c("Qtr","Actual $K","Fit $K","Qtr","Actual $k","Fit $K")
t22<-tableGrob(tb3,gp=gpar(cex=0.6))
grid.arrange(t22)
invisible(dev.off())

Появится следующая таблица: http://i.stack.imgur.com/pVsFr.png< /а>

Я хотел бы, чтобы цвет row1=row4, цвет row2=row5 и цвет row3=row6

Спасибо


person Summer Gleek    schedule 02.10.2014    source источник
comment
это было задано несколько раз, и короткий ответ нет. Однако есть несколько альтернатив: использование более старой версии или это экспериментальная функция   -  person baptiste    schedule 02.10.2014