Sau khi thiết lập thông số đồ họa với par(fig)
và đặt lại chúng với thông số ban đầu, văn bản trong lề của lô không được viết. Chỉ sau một lệnh cấp thấp khác bên trong khu vực vẽ đồ thị được thực hiện sẽ hoạt động trở lại. Dưới đây là ví dụ:sau mệnh (hình), văn bản trong lề không được viết
dev.off()
plot(1:10)
op <- par(no.readonly = TRUE)
mtext("hello", adj=1, col=2) # written as expected
par(fig=c(0.1,0.6,0.5,0.8), new=TRUE)
par(op)
mtext("hello ", adj=1, col=3) # not written
mtext("hello ", adj=1, col=3, line=-1) # works inside plot region
mtext("hello ", adj=1, col=3) # still not written
text(50,20,"") # or abline # do something inside plot region
mtext("hello ", adj=1, col=3) # now it works!
Điều này có thể liên quan đến một câu hỏi khác mà tôi đã đăng theo after par(fig), mtext is slightly off.
Bên cạnh đó mtext
, axis
cũng không hoạt động. Bên cạnh đó text/abline/points
, title(main="dummy")
cũng giải quyết được vấn đề.
Đây có phải là lỗi R không? Hay tôi đang thiếu một cái gì đó?
Tôi nghi ngờ 'par (op)' bắt đầu một âm mưu mới. Thay thế 'par (op)' bằng 'par (fig = op $ fig, new = TRUE)' và nó hoạt động như mong đợi. –
Điều đó thật thú vị! 'par (fig = op $ fig)' suffices mà không có 'new', btw .. Điều đó không giải thích tại sao nó hoạt động trong khu vực âm mưu nhưng không ở lề, mặc dù ... –