在一致的位置绘制分裂字符向量

时间:2012-07-24 04:25:07

标签: r

好吧,我决定浪费晚上在R里做一个刽子手游戏。看到一切看起来都不错,除了未知数量的字母,如下图所示:

a
b
f
d
g

以下是使用textmtext的示例/尝试:

FUN <- function(n) {
    plot.new()   
    mtext("wrong", side = 3, cex=1.5, adj = 0, padj = 1, col = "red") 
    wrong <- letters[1:n]
    text(0, .8, paste(wrong, collapse = "\n"), offset=.3, cex=1.5)
}

FUN(5)
FUN(10)

FUN2 <- function(n) {
    plot.new()   
    mtext("wrong", side = 3, cex=1.5, adj = 0, padj = 1, col = "red") 
    wrong <- letters[1:n]
    mtext(paste(wrong, collapse = "\n"), side = 3, cex=1.5,
        adj = 0, padj = 2.5)
}

FUN2(5)
FUN2(10)

如何在同一位置的aFUN(5)地块中FUN(10)进行制作?

1 个答案:

答案 0 :(得分:1)

第一条路! R游戏!你应该完全制作一个包,这样我才能玩;)

对于text,您可以使用adj参数,如果将其设置为1.那么提供给(x,y)的{​​{1}}坐标指的是左上角包含文本的矩形。

  

adj:[0,1]中的一个或两个值指定x(和             可选地y)调整标签。在大多数设备上             超出该间隔的值也可以。

text

注意FUN <- function(n) { plot.new() mtext("better?", side = 3, cex=1.5, adj = 0, padj = 1, col = "red") wrong <- letters[1:n] text(0, .8, paste(wrong, collapse = "\n"), offset=.3, cex=1.5, adj=c(0,1)) } ,0是x对齐,1是y对齐(文档并没有真正说明这一点,但因为它是adj=c(0,1)中的值,我认为它是对位置的调整该维度中标签长度的一小部分。)

同样对于[0,1],您需要使用mtext,根据文档进行顶部对齐(因为您的文字方向是从左到右)。 padj=1参数是左右对齐。

adj

(你打算做幽默的男人形象吗?听起来很有趣:D)