我有下一个代码:
list_data <- list.files(pattern="*NDVI",full.names=T)
使用以下方式堆叠我的数据:
data <- stack(list_data)
并且图层的名称是:
> names(data)
[1] "Max_NDVI_2000" "Max_NDVI_2001" "Max_NDVI_2002"
[4] "Max_NDVI_2003" "Max_NDVI_2004" "Max_NDVI_2005"
[7] "Max_NDVI_2006" "Max_NDVI_2007" "Max_NDVI_2008"
[10] "Max_NDVI_2009" "Max_NDVI_2010" "Max_NDVI_2011"
然后,我需要更改图层的名称:2000,2001,......,2011,,我正在使用
names(data) <- 2000:2011
但我得到了X2000,X2001 ......
> names(data)
[1] "X2000" "X2001" "X2002"
[4] "X2003" "X2004" "X2005"
[7] "X2006" "X2007" "X2008"
[10] "X2009" "X2010" "X2011"
但是,如果我使用字符输出是正确的:
> names(data) <- month.abb
> names(data)
[1] "Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug"
[9] "Sep" "Oct" "Nov" "Dec"
month.abb的类是如何构成字符然后我改变
names(data) <- as.character(2000:2011)
但输出没有变化。
那么,我怎么能改变图层的名字? **。PD:我需要使用 rasterVis 包(levelplot函数)更改用于绘制数据的名称
答案 0 :(得分:3)
要更改图中图层的名称,您可以使用names.attr
:
levelplot(data,par.settings=BuRdTheme(),names.attr=c(as.character(2000:2011)))