将变量2个x变量组合为1

时间:2020-05-04 07:39:25

标签: r

我想将x变量与线组合起来,因为没有在相关时间段对x变量进行测量,而用一个主线的不同颜色来表示它们之间的差异。对以下脚本有何建议?

plot(dat$days,dat$wc_10_1,
     main="Rollesbroich-1, 0.1 m",
     xlab="Days",
     ylab=expression( "water content (cm"^3 / "cm)"^3),
     type="l",
     col="blue",
     pch=16)
lines(dat$days,dat$m_wc_10_1, col="red",pch=16, type="l")

1 个答案:

答案 0 :(得分:0)

使用ggplot2可能最容易做到。下面是一个我认为您要在两个x变量都是连续的情况下尝试实现的示例。

dat = data.frame(days=1:10, 
                 wc_10_1=rnorm(10),
                 m_wc_10_1=rnorm(10,5,5))

# ggplot2 ----
library(ggplot2)

ggplot(data = dat, aes(x=days, y=wc_10_1, colour=m_wc_10_1)) +
  geom_line() +
  labs(
    x="Days",
    y=expression(cm^{3} / cm)
  )

不确定如何使用基本图为线提供连续的比例尺,但是我敢肯定这是可能的。一种解决方法是使用type="b"

# base ----
my_colour = "blue"
x2_norm = dat$m_wc_10_1 - min(dat$m_wc_10_1)
x2_norm = x2_norm/max(x2_norm)
my_colour_scale = scales::alpha(my_colour, x2_norm)
plot(x=dat$days,
     y=dat$wc_10_1,
     col=my_colour_scale,
     t="b",
     pch=16)