如何使固定的`text()`的大小与R中移动的`text()`的大小相同

时间:2017-04-14 17:26:03

标签: r function plot

如果你在下面运行我的小功能,你会看到如下图所示的内容。 曲线周围的较小尺寸此处 已修复 。但是,如果您多次运行我的函数,较大尺寸的“此处” 移动 进一步查看我的R代码以下 )。

我的问题是我如何将固定的“HERE”text()的大小设置为等于移动text() 的大小 WHEN < / strong>文本的两个部分在其他顶部之间落下?

请参阅下面我注释的R代码。

enter image description here

Here = function(){

curve(dnorm(x), -4, 4)

x.on.curve = seq(-4, 4, len = 21) # x.values for fixed text
y.on.curve = dnorm(x.on.curve)    # y.values for fixed text

xx  <- sample(x = seq(-4, 4, len = 21), size = 1) # x.values for moving text
yy  <- dnorm(xx)                                  # y.values for moving text

text(x.on.curve, y.on.curve, 'Here') ## whenever the x.values of a fixed 'HERE' 
                                      # matches the x.value of the moving 'HERE'  
                                      # in below "text()", change cex = 2, ELSE cex = 1

text(xx, yy, 'Here', cex = 2)         

}

## Please run multiple times here:
Here()

1 个答案:

答案 0 :(得分:3)

这样的事情会起作用吗?

Here = function(){    
   curve(dnorm(x), -4, 4)
   x.on.curve = seq(-4, 4, len = 21) # x.values for fixed text
   y.on.curve = dnorm(x.on.curve)    # y.values for fixed text

   ind <- sample(1:21,1) # index of the x and y values for moving text

   text(x.on.curve[-ind], y.on.curve[-ind], 'Here')    
   text(x.on.curve[ind], y.on.curve[ind], 'Here', cex = 2)    
}

## Please run multiple times here:
Here()