R 如何绘制多条曲线、同一数据帧、第1列中每个唯一值对应一条曲线?

R 如何绘制多条曲线、同一数据帧、第1列中每个唯一值对应一条曲线?,r,R,所以我有一个数据框,看起来像这样 Col1 Col2 Col3 ------------------ foo x11 y11 foo x12 y12 foo x13 y13 bar x21 y21 bar x22 y22 bar x23 y23 baz x31 y31 baz x32 y32 baz x33 y33 我想为第1列中的每个唯一值绘制一条曲线,并将它们叠加在同一个图上

所以我有一个数据框,看起来像这样

Col1   Col2   Col3
------------------
foo    x11    y11
foo    x12    y12
foo    x13    y13
bar    x21    y21
bar    x22    y22
bar    x23    y23
baz    x31    y31
baz    x32    y32
baz    x33    y33
我想为第1列中的每个唯一值绘制一条曲线,并将它们叠加在同一个图上,其中每条曲线上的点由第2列和第3列中的数字x,y坐标指定。我事先不知道这些值是什么,它们也没有数字标签。我该怎么做

信不信由你,我在网上找不到这个问题的答案


谢谢

这里有两种可能性,一种是ggplot2,另一种是base:

set.seed(1234)
df <- data.frame(fac = gl(3, 3), x = rep(1:3, 3), y = rnorm(9))

# ggplot
require(ggplot2)
ggplot(df, aes(x = x, y = y, col = fac)) +
  geom_line()

# base
dfwide <- reshape(df, timevar = 'fac', idvar = 'x', direction = 'wide')
matplot(dfwide[,-1], type = 'l')

没有数字标签意味着什么?您应该发布一个示例数据集。@BondedDust这意味着标签是foo和bar之类的东西,而不是1、2、3或Category1、Category2、Category3。这使得它不太适合于for循环之类的。