在R中为数据帧的每一行绘制不同的线
我的问题可能是基本的,但在过去的几个小时里,它一直让人头痛,因此,任何帮助都将非常感谢 我有一个约150列和约1000行的数据帧。数据框的每个[i,j]单元都包含一个数值,除了数据框第一列中包含唯一ID的值(数据框的每一行都是唯一的) 我想绘制一个图表,其中数据框的每一行都将单独绘制在一个单独的图表(绘图)上(即,对于每一行,将创建一个有自己轴的绘图,其中y轴上绘制的行的值和x轴上作为标签的数据框的列名)。然后,每个单独的图表都将位于前一个图表的下方 例如,如果我们假设数据帧如下所示:在R中为数据帧的每一行绘制不同的线,r,plot,dataframe,ggplot2,R,Plot,Dataframe,Ggplot2,我的问题可能是基本的,但在过去的几个小时里,它一直让人头痛,因此,任何帮助都将非常感谢 我有一个约150列和约1000行的数据帧。数据框的每个[i,j]单元都包含一个数值,除了数据框第一列中包含唯一ID的值(数据框的每一行都是唯一的) 我想绘制一个图表,其中数据框的每一行都将单独绘制在一个单独的图表(绘图)上(即,对于每一行,将创建一个有自己轴的绘图,其中y轴上绘制的行的值和x轴上作为标签的数据框的列名)。然后,每个单独的图表都将位于前一个图表的下方 例如,如果我们假设数据帧如下所示: Jan
Jan = c(2, 3, 5)
Feb = c(8, 9, 12)
Mar = c(2.2, 7, 3)
Apr= c(1, 3.7, 23)
df = data.frame(Jan, Feb, Mar, Apr)
然后我的目标是让3个图一个在另一个下面,每个图包含一条穿过4个点的线,对应于4个月(1月、2月、3月、4月)的每个值。例如,第一个绘图将有一条从值[2,Jan]、[8,Feb]、[2.2,Mar]和[1.0,Apr]经过的线。接下来的两个情节也是如此
有人能给我指出正确的方向,并给我一些如何实现目标的提示吗
多谢各位 下面是一个解决方案,它使用您的示例上的
重塑2
包中的melt
。拥有1000多个面(行)和150多个x记号(列)可能更难
下面是一个解决方案,使用您示例中的
reformae2
包中的melt
。拥有1000多个面(行)和150多个x记号(列)可能更难
尽管每次调用
plot
时都会实例化一个新的绘图,但如果调用segment
,它将添加到线段上。或者,您可以使用x变量调用点
,并找到连接点的设置,而绘图
每次调用时都会实例化一个新绘图,如果调用段
,它将添加到线段上。或者,您可以使用x变量调用点
,并找到连接点的设置Billiant solution bVa!非常感谢你的帮助!你完全搞定了!卓越解决方案bVa!非常感谢你的帮助!你完全搞定了!
df = cbind(df, row_number = seq(1, 3))
df_melt = melt(df, id = "row_number")
ggplot(df_melt, aes(x = variable, y = value, group = row_number)) +
geom_line(stat = "identity") + facet_wrap(~row_number, ncol = 1, scales = "free")