我继承了此R代码,该代码绘制了简单的折线图。但是,这样做是为了将y轴值向下绘制到0以下(将其绘制在第4个象限中,顶部为0,底部为+3600)。我想将数据右侧向上绘制(第一象限),因此y轴数据从0到顶部的+3600像典型的小学绘图一样。
我尝试了ylim = rev(y),但返回错误... 我也尝试过翻转seq()命令,但是那里没有运气。
list.vlevel = numeric(9) # placeholder
plot(
rep(0, length(list.vlevel)),
seq(1, length(list.vlevel)),
type = "n",
xlim = biaslim,
axes = F,
main = paste(list.var.bias[vv], list.score.bias[vv]),
xlab = "",
ylab = ""
)
abline(h = seq(1, length(list.vlevel)),
lty = 3,
col = 8)
axis(2,
labels = list.vlevel,
at = seq(length(list.vlevel), 1, -1),
las = 1)
axis(1)
box()
legend(
x = min(biasarray.var.runhour),
y = length(list.vlevel),
legend = expname,
lty = 3,
lwd = 3,
col = expcol
)
for (exp in seq(length(expname), 1, -1)) {
lines(
biasarray.var.runhour[exp, ],
seq(length(list.vlevel), 1, -1),
col = expcol[exp],
lwd = 3,
lty = 3
)
}
abline(v = 0, lty = 3)
该图应在第一象限结束,y轴值从0向上增加到+ ###。
答案 0 :(得分:1)
axis(2, ...)
线绘制y轴。您可以看到标签遵循降序排列:seq(length(list.vlevel), 1, -1)
。 seq(1, length(list.vlevel))
类似地,在lines()
内可能,您需要从seq(length(list.vlevel), 1, -1)
到``seq(1,length(list.vlevel))`进行相同的更改>
我们已经用您提供的信息告诉了我们很多-在没有您使用的所有常量值的情况下,无法运行任何yoru代码,例如biasarray.var.runhour
,list.var.bias
,{ {1}},等等。