【R】persp

perspは、xy平面上の透視投影図を描くbase-r標準の関数なのですが、今さらですが知ったので、使ってみました。

おなじみのvolcanoデータです。

image(volcano)

等高線で表示してみます。

contour(volcano)

で、persp関数を使って、こんな感じで表現できます。

persp(volcano,  expand=0.4, shade=0.2, theta=12.2, phi=23.4)

色も付けられます。

persp(volcano, col = rainbow(30), expand=0.4, shade=0.2, theta=12.2, phi=23.4)
par(bg = "white")
x <- seq(-1.95, 1.95, length = 30)
y <- seq(-1.95, 1.95, length = 35)
z <- outer(x, y, function(a, b) a*b^3)
nrz <- nrow(z)
ncz <- ncol(z)
jet.colors <- colorRampPalette( c("green", "white", "yellow") )
nbcol <- 20
color <- jet.colors(nbcol)
zfacet <- z[-1, -1] + z[-1, -ncz] + z[-nrz, -1] + z[-nrz, -ncz]
facetcol <- cut(zfacet, nbcol)
persp(x, y, z, col = color[facetcol], phi = 25, theta = -20)

xy平面に加え、高さデータも含めて自由に表現できます。Rは凄いですねえ。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です