我要绘制多组xy对。我希望每组xy对通过一条线连接。换句话说,目标是要有多个实验实例,每个实例都由一条绘图上的一条线近似。另外,我如何对线条进行不同的着色?

plot函数可以满足我的要求,但是需要一组xy对:
plot(x, y, ...)

可以将此功能设置为多套吗?

最佳答案

要使用普通的plot命令执行此操作,通常会创建一个图,然后使用lines()函数添加更多的线。

否则,您可以使用grid或ggplot2。这里是一些数据:

df <- data.frame(a = runif(10), b = runif(10), c = runif(10), x = 1:10)


您可以从晶格中使用xyplot()

library(lattice)
xyplot(a + b + c ~ x, data = df, type = "l", auto.key=TRUE)


或ggplot2中的geom_line()

library(ggplot2)
ggplot(melt(df, id.vars="x"), aes(x, value, colour = variable,
        group = variable)) + geom_line() + theme_bw()


这是另一个示例,其中包括每对点(来自this post on the learnr blog):

library(lattice)
dotplot(VADeaths, type = "o", auto.key = list(lines = TRUE,
     space = "right"), main = "Death Rates in Virginia - 1940",
     xlab = "Rate (per 1000)")


和使用ggplot2相同的情节:

library(ggplot2)
p <- ggplot(melt(VADeaths), aes(value, X1, colour = X2,
             group = X2))
p + geom_point() + geom_line() + xlab("Rate (per 1000)") +
         ylab("") + opts(title = "Death Rates in Virginia - 1940")

关于r - 在R中绘制多组点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1875192/

10-12 23:43