的matplot()GGPLOT2当量:情节由列的矩阵/数组?(ggplot2 equivalent

2019-06-27 04:42发布

matplot()可以很容易地通过绘制列(也适用于数据帧)的矩阵/二维阵列:

a <- matrix (rnorm(100), c(10,10))
matplot(a, type='l')

是否有类似的使用GGPLOT2东西,还是需要GGPLOT2数据被melted首先进入一个数据帧?

此外,有一种方法利用单独的矢量矩阵的列的任意颜色/样式子集(的length=ncol(a)

Answer 1:

也许对于这个具体的例子更容易一些:

library(ggplot2)
a <- matrix (rnorm(100), c(10,10))
sa <- stack(as.data.frame(a))
sa$x <- rep(seq_len(nrow(a)), ncol(a))
qplot(x, values, data = sa, group = ind, colour = ind, geom = "line")


Answer 2:

在过去提出的问题的答案通常建议熔体策略指定组参数之前:

require(reshape2); require(ggplot2)
dataL = melt(a, id="x")
 qplot(a, x=Var1, y=value, data=dataL, group=Var2)

p  <- ggplot(dataL, aes_string(x="Var1", y="value", colour="Var2", group="Var2"))
p <- p + geom_line()


Answer 3:

就在一定程度上简化前(基质被包裹在C(),以使它们的载体)什么指出:

    require(ggplot2)
    a <- matrix(rnorm(200), 20, 10)
    qplot(c(row(a)), c(a), group = c(col(a)), colour = c(col(a)), geom = "line")


文章来源: ggplot2 equivalent of matplot() : plot a matrix/array by columns?