gpt4 book ai didi

r - 绘制正无穷符号和负无穷符号

转载 作者:行者123 更新时间:2023-12-02 08:51:56 26 4
gpt4 key购买 nike

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

这是我的 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 ) ) )

最佳答案

?plotmath 开始

If the text argument to one of the text-drawing functions (text, mtext, axis, legend) in R is an expression, the argument is interpreted as a mathematical expression and the output will be formatted according to TeX-like rules.

并且 textlabels 参数记录为

a character vector or expression specifying the text to be written. An attempt is made to coerce other language objects (names and calls) to expressions, and vectors and other classed objects to character vectors by as.character.

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

  • 由于 R 无法处理调用向量,c 实际上并不创建向量,而是将结果强制到列表中,类似于 c(sum,mean) 被强制为一个列表,并且
  • 虽然 text 会将 bquote 本身返回的调用强制转换为表达式(可以正确解析),但它会将列表强制转换为字符向量,这不会根据plotmath进行解释。

您可以使用 as.expression 显式强制使用 cbquote 生成的调用列表,但直接调用 会更快>直接表达并完全避免bquote:

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))

plot with infinity symbols

作为尾注,c 实际上确实可以处理多个表达式(某种程度上),即 c(expression(-infinity), expression(infinity) ) 返回表达式(-infinity, infinity)。与具有两个命名参数的 bquote 不同,expression 需要 ...,因此使用多个输入调用一次会更容易。

关于r - 绘制正无穷符号和负无穷符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43033974/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com