用R中的条形图有条件地绘制pch

时间:2018-05-13 05:22:47

标签: r plot

我尝试在R中的pch中指定stripchart时无法绘制不同的符号:

set.seed(7)
(x <- rpois(20, 5))
stripchart(x, method = "jitter", pch = ifelse(x %% 2 == 0, 16, 17))

enter image description here

我喜欢圈子(pch = 16),因为它是偶数,而三角形(pch = 17)则是奇数点。应该很简单,但我不能让它起作用 - 它似乎只是取第一个值。我也无法查看stripchart的源代码。

有什么建议吗?如果我可以使用基本图形而不是ggplot,我更喜欢它。

1 个答案:

答案 0 :(得分:3)

我们可以用奇数或偶数分割矢量,然后用不同的pch值绘制两次点。

set.seed(7)
(x <- rpois(20, 5))

x1 <- x[x %% 2 == 0]
x2 <- x[x %% 2 != 0]

stripchart(x1, method = "jitter", pch = 16, xlim = range(x))
stripchart(x2, method = "jitter", pch = 17, add = TRUE)

enter image description here