1

splitTextGorbパッケージRGraphicsからベース プロットを使用して作成した複数行のテキストを追加したいと思います。次のことを試しましたが、うまくいきません (つまり、テキストがプロットに表示されません)。

layout(matrix(c(1,2), nrow=2, byrow=TRUE), heights = c(1,1.5))    
plot(...)
grob = splitTextGrob("This is my text")
plot.new()
vp.BottomRight <- viewport(height=unit(.5, "npc"), width=unit(0.5, "npc"), 
                       just=c("left","top"), 
                       y=0.5, x=0.5)
print(grob, vp = vp.BottonRight)

ベースプロットにテキストを追加するオプションであることは知っていますが、柔軟性があるかどうかにかかわらず、特にmtext使用したいと思います。splitTextGrobmtextgrid.text()

どんな助けでも大歓迎です。ありがとうございました!

4

2 に答える 2

1

grid.draw()grob および gTree オブジェクトに使用する必要があります。

grid.text()は、テキストおよびプロット数式専用です。

于 2014-03-27T15:23:35.347 に答える
1

これは gridBase パッケージを使用して、プロットの現在のビューポートにテキストを追加します。

library(RGraphics)
library(gridExtra)
library(gridBase)


layout(matrix(c(1,2), nrow=2, byrow=TRUE))

# First base plot
plot(1:10)

# Grid regions of base plot
vps <- baseViewports()
pushViewport(vps$inner, vps$figure, vps$plot)

# Text grob
grob <-  splitTextGrob("This is my text")
vp.BottomRight <- viewport(height=unit(.1, "npc"), width=unit(0.1, "npc"), 
                       just=c("left","top"), 
                       y=0.2, x=0.8 )
# Add text grob
pushViewport(vp.BottomRight)
grid.draw(grob)

upViewport(4) 


# Second plot
plot(1:10)
vps <- baseViewports()
pushViewport(vps$inner, vps$figure, vps$plot)
pushViewport(vp.BottomRight)
grid.draw(grob)
于 2014-03-27T18:53:20.007 に答える