如何绘制向量及其元素的组合

时间:2017-11-15 18:32:41

标签: r plot

我需要用矩阵元素的所有组合绘制许多图形。

我有三列。我想绘制名为A的元素的时间序列对应于W1,然后命名为B的元素的时间序列对应于W1。与W2相同;实际上我的矩阵是巨大的,但这个想法应该适用。

特别是,我想学习如何告诉R将W1的所有元素组合在一起,用名称元素将它们分开。

此外,绘制所有这些图形的最有效方法是什么(在下面的例子中,我需要4个图表)?

name    W1   W2
A       123  24
A       754  7245
A       475  257
A       623  2457
A       525  27
A       256  72
A       352  725
B       257  572
B       572  577
B       75   257
B       27   257
B       247  7522
B       257  724

1 个答案:

答案 0 :(得分:0)

我使用ggplot2包进行绘图,使用reshape2包将广泛数据转换为长数据。

# get x values for your plots
df$x = ave(df$W1, df$name, FUN = seq_along)
# conver wide data to long
df_long = reshape2::melt(df, id.vars = c("name", "x"))

library(ggplot2)
# plot
ggplot(df_long, aes(x = x, y = value)) + geom_line() +
  facet_grid(name ~ variable)

enter image description here

使用此数据:

df = read.table(text = "name    W1   W2
A       123  24
A       754  7245
A       475  257
A       623  2457
A       525  27
A       256  72
A       352  725
B       257  572
B       572  577
B       75   257
B       27   257
B       247  7522
B       257  724", header= T)