2017-02-22 50 views
0

我正在用函數smallPlot創建一個子圖。它將par(fig)設置爲圖的子區域(或圖,對於多面板圖)。但是,重置參數後,mtext稍微關閉。任何想法,爲什麼發生這種情況?par(fig)之後,多行文字稍微關閉

dev.off() 
plot(1:10) 
mtext("hello", adj=1, col=2)   # written as expected 
op4 <- par(fig=c(0.1,0.8,0.3,0.8), new=TRUE) 
par(op4) 
mtext("hello ", adj=1, col=3)   # right spot 
par(fig=c(0.1,0.8,0.3,0.8), new=TRUE) 
plot(rnorm(400), type="l") 
par(op4) 
mtext("hello ", adj=1, col=4)   # too far left 

編輯:原來的問題是不同的,但很容易解決。這是供參考:

dev.off() 
op1 <- par(no.readonly = TRUE) 
plot(1:10) 
abline(h=2, col=2)      # drawn 

par(fig=c(0.1,0.8,0.3,0.8), new=TRUE) 
plot(rnorm(400), type="l") 
par(op1) 
abline(h=4, col=4)      # not drawn! 
axis(4) 

答:op1$usr是0,1,0,1每默認。

回答

0

op4沒有usr元素。在插入小圖後,usr被更改。要重置,可以使用類似這樣的東西:

dev.off() 
plot(1:10) 
usr <- par("usr") 
op4 <- par(fig=c(0.1,0.8,0.3,0.8), new=TRUE) 
plot(rnorm(400), type="l") 
par(op4) 
par(usr=usr) 
mtext("hello", adj=1, col=4); mtext("hello", adj=0, col=4) 
相關問題