gpt4 book ai didi

r - 如何在 R 中使用 matplot 绘制非常自定义的线条样式

转载 作者:行者123 更新时间:2023-12-01 01:04:17 24 4
gpt4 key购买 nike

?par解释说 lty可以指定为交替绘制/跳过的线段长度的向量。

例如 c(1,3,1,1)看起来像这样:

─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ 

但是如果我尝试通过 lty=c(1,3,1,1)matplot (或者如果我使用 par 预设它),那么 matplot假设我想通过样式 1(实线)、样式 3(虚线)、样式 1(实线)、样式 1(实线)循环,结果是
────────────────────────────────────────────────────────────────────────────
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
────────────────────────────────────────────────────────────────────────────
────────────────────────────────────────────────────────────────────────────
────────────────────────────────────────────────────────────────────────────
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
────────────────────────────────────────────────────────────────────────────
────────────────────────────────────────────────────────────────────────────

而不是这个
─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ ─   ─ 
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─

我该如何制作 matplot理解它应该将整个向量解释为一种样式吗?

最佳答案

所以?par实际上是说自定义线型应该被指定为一个字符,具有偶数个元素,例如"33" .

无论如何,matplot不会处理将其与普通整数规范混合的情况,因为它“选择”了 lty参数为向量,每行一个值。

您可以通过 matplot一个字符向量并指定每个 lty手动,例如类似 lty = c("44","22","33","3322") .或者您可以创建自己的 matplot 版本通过将最后几行更改为:

if (!add) {
ii <- ii[-1L]
plot(x[, 1L], y[, 1L], type = type[1L], xlab = xlab,
ylab = ylab, xlim = xlim, ylim = ylim, lty = lty[[1L]],
lwd = lwd[1L], lend = lend[1L], pch = pch[1L], col = col[1L],
cex = cex[1L], bg = bg[1L], ...)
}
for (i in ii) lines(x[, i], y[, i], type = type[i], lty = lty[[i]],
lwd = lwd[i], lend = lend[i], pch = pch[i], col = col[i],
cex = cex[i], bg = bg[i])

以便它使用 [[而不是 [选择合适的 lty值(value)。然后您可以将值列表传递给 lty并且每个都会被正确解释。

关于r - 如何在 R 中使用 matplot 绘制非常自定义的线条样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20036440/

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