2016-10-31 6 views
1

私は基本的にグラフの後ろの領域を陰にしたいと思っています。ログスケールで `polygon()`を使う方法は?

リニアスケールで行うのは簡単です。

x <- 1:20 
y <- x^2 
plot(x, y, type="l") 
polygon(c(10,10,15,15), 
     c(-100,600,600,-100), 
     col=rgb(0,1,0,0.3),border=FALSE) 

は、この生成されます

enter image description here

をしかし、あなたは対数スケールでYを入れたら、

plot(x, y, type="l", log="y") 
polygon(c(10,10,15,15), 
     c(-100,600,600,-100), 
     col=rgb(0,1,0,0.3),border=FALSE) 

何も現れません。

enter image description here

+0

を試してみてください? –

答えて

0

log = "y"でプレイするときは注意してください。 yの値が負の場合は、NaNとなります。これはまさにここで起こったことです。あなたはプロット(X、ログ(Y)、タイプ=「L」)を使用していない理由を

plot(x, y, type="l", log="y") 
polygon(c(10,10,15,15), 
     c(1e-7,600,600,1e-7), ## log(1e-7) is small enough 
     col=rgb(0,1,0,0.3),border=FALSE) 

enter image description here

+0

あなたZheyuanをありがとう! – jesse

関連する問題