1

私は次のコードを持っています:

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 関数)を使用してデータをプロットするための名前を変更する必要があります

4

1 に答える 1

3

プロット内のレイヤーの名前を変更するには、次を使用できますnames.attr

levelplot(data,par.settings=BuRdTheme(),names.attr=c(as.character(2000:2011)))
于 2016-07-01T10:11:04.987 に答える