绘制正无穷大符号和负无穷大符号

rno*_*ian 4 plot r plotmath

我想知道如何在情节中绘制正无穷大符号和无穷大符号?

这是我的R代码(没有成功):

plot(1, ty ='n', ann = F, xlim = c(-4, 6), ylim = c(-3.5, 1.5) )

text(c(-4, 6 ), rep(1, 2), c( bquote(- infinity  ), bquote(infinity  ) ) ) 
Run Code Online (Sandbox Code Playgroud)

ali*_*ire 7

?plotmath 启动

如果text参数的文本绘图功能之一(text, mtext,axis,legend在R)是一个表达,所述参数被解释为一个数学表达式和输出将根据TEX-等规则进行格式化.

并且labels参数text记录为

指定要写入的文本的字符向量或表达式.尝试将其他语言对象(名称和调用)强制转换为表达式,将矢量和其他归类对象强制转换为字符向量.as.character

(强调我的).bquote实际上并不返回一个表达式(R类,而不是概念),而是一个语言对象(特别是一个调用).这导致两个问题:

  • 因为R无法处理调用c向量,实际上并不创建向量,而是将结果c(sum, mean)强制转换为列表,类似于如何强制转换为列表,以及
  • 虽然text会强制从bquote它自己返回到一个表达式的调用(它会被正确解析),但它会强制列表到一个字符向量,而这个字符向量不会被解释plotmath.

您可以强制使用cbquote明确使用生成的调用列表as.expression,但是更快地直接调用expressionbquote完全避免:

plot(1, ty ='n', ann = F, xlim = c(-4, 6), ylim = c(-3.5, 1.5))

text(c(-4, 6 ), rep(1, 2), expression(-infinity, infinity)) 
Run Code Online (Sandbox Code Playgroud)

情节与无穷大符号

作为结束语,c实际上确实可以处理多个表达式 - c(expression(-infinity), expression(infinity))返回的类型expression(-infinity, infinity).不像bquote,它有两个命名参数,expression需要...了,所以它更容易只是多输入调用它一次.


G5W*_*G5W 3

尝试:

text(c(-4, 6 ), rep(1, 2), c( bquote("- \U221E"), bquote("\U221E") ) ) 
Run Code Online (Sandbox Code Playgroud)