【问题标题】:Using pch the option in plot在情节中使用 pch 选项
【发布时间】:2015-10-01 14:26:24
【问题描述】:

我想对1:10 使用基本图形,其中点的形状在加号(即+)和三角形之间交替。

下面的代码plot(1:10, pch = c("+",2)) 可能会起作用。这是因为pch=2 对应三角形。然而,代码产生:

这当然会发生,因为c() 函数将2 强制转换为一个字符。我的问题是,我如何将字符串和整数都传递给 pch?

谢谢!

【问题讨论】:

  • 我只会做plot(1:10, pch = c(3,2))
  • @Pascal 写一个答案。

标签: r plot


【解决方案1】:

虽然@Pascal 的答案可以正常工作,但如果您可以为所需的文本找到合适的pch= 参数,您仍然可以通过多次调用points 来使用任意文本:

x <- 1:10
shapes <- list("Y",2)
plot(x,type="n")
Map(points, split(data.frame(seq_along(x), x), seq_along(shapes)), pch=shapes )

或使用一些技巧将所有内容转换为数字:

plot(x, pch=sapply(shapes, function(x) if(is.character(x)) strtoi(charToRaw(x),16L) else x))

【讨论】:

  • plot(1:10, pch = c(89,2))
  • @Pascal - 这可能是真的,但仅仅能够输入“Y”或“C”或“ü”比记住 89 等代表的含义更容易。
  • 也许吧。我个人更喜欢使用this kind of link,而不是为基本图运行 3 行。
  • 帕斯卡,我很欣赏你的实用解决方案。但是,我对类似于 thelatemail 的解决方案更感兴趣。谢谢你们!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-26
  • 1970-01-01
  • 2012-01-02
  • 1970-01-01
  • 2015-01-06
  • 1970-01-01
  • 2012-07-27
相关资源
最近更新 更多