-2

ラスター ファイル (1440*720 行) に 1 、2 、および 3 の値が含まれています。ファイルをプロットすると、3 色のマップが得られましたが、どれがどれかわかりません。これらの色を好きなように配置するにはどうすればよいですか:

   1=red
   2=blue
   3=green

コード:

pvm <- file("C:\\User_sm-das.bin","rb")
cor1<- readBin(pvm, numeric(), size=4,  n=1440*720, signed=TRUE)
r <-raster(t(matrix((data=cor1), ncol=720, nrow=1440)))
image(r)
4

2 に答える 2

3

画像に凡例を追加するのにimage.plot使用できます。fieldsここに例があります:

まず、いくつかのデータを生成します:

set.seed(1234)
x<- 1:5; y<- 1:5
z<- matrix(sample(c(1,2,3),25,rep=TRUE),ncol=5,byrow=TRUE)

次に、これを使用して、凡例を追加するfields通常のパラメーターを使用します。image

# fields 
library(fields)
image.plot(x,y,z,col = c("blue" , "red" ,"yellow"),
           interpolate=TRUE) 

ここに画像の説明を入力

ラスターマトリックスを色のマトリックスに変換したい場合は、次のようにすることができます:

## raster 
r <- raster(ncol=5, nrow=5)
values(r) <- z
mm <- matrix(c("blue" , "red" ,"yellow")[values(r)],
             ncol=5,byrow=TRUE)

     [,1]     [,2]   [,3]   [,4]     [,5]    
[1,] "blue"   "red"  "red"  "red"    "yellow"
[2,] "red"    "blue" "blue" "red"    "red"   
[3,] "yellow" "red"  "blue" "yellow" "blue"  
[4,] "yellow" "blue" "blue" "blue"   "blue"  
[5,] "blue"   "blue" "blue" "blue"   "blue"  

image数値を持つ必要がある色のマトリックスをプロットできないという問題があります。ただし、パッケージgrid.rasterから使用できます:grid

library(grid)
grid.raster(mm,interpolate=FALSE)

編集

axis.args凡例を手動で修正するには、次の引数で遊ぶことができます plot.image

   ## fields 
image.plot(x,y,z,
           col = c("red" , "green" ,"blue"),
           axis.args=list( at=0:3, labels=0:3 )) 
于 2013-03-31T13:17:54.557 に答える
0

RaterLayer 'r' を使用すると、plot(r) を実行してプロットと凡例を取得できます

于 2013-04-03T05:05:43.720 に答える