将r中每个分组变量的数据帧的所有列打印到单个绘图上

将r中每个分组变量的数据帧的所有列打印到单个绘图上,r,ggplot2,R,Ggplot2,D 亲爱的各位,鉴于下面的数据框架,我正在尝试绘制每列的值,并按类型(有三组,alpha、beta、gamma)标记总体(彩色) 换句话说,x轴应显示9个点(x100、x110….、x180),y轴范围应为0到2(每列的最大值为0到2) 结果三行中的每一行都应该突出显示三个分类变量中的每一个 对数据帧的格式表示歉意,我还没有弄清楚如何输出它 structure(list(Group.1 = c("alpha", "beta", "gamma&qu

D 亲爱的各位,鉴于下面的数据框架,我正在尝试绘制每列的值,并按类型(有三组,alpha、beta、gamma)标记总体(彩色)

换句话说,x轴应显示9个点(x100、x110….、x180),y轴范围应为0到2(每列的最大值为0到2)

结果三行中的每一行都应该突出显示三个分类变量中的每一个

对数据帧的格式表示歉意,我还没有弄清楚如何输出它

structure(list(Group.1 = c("alpha", "beta", "gamma"), x100 = 
c(1.31729175522923, 
0.985278656706214, 0.156200287397951), x110 = c(1.54471416538581, 
0.915659603197128, 0.733224726747721), x120 = c(1.27778739808127, 
0.813037838321179, 0.779596480540931), x130 = c(1.25000598328188, 
0.488610395696014, 0.806707685347646), x140 = c(1.82296009687707, 
1.16132276877761, 1.31973652262241), x150 = c(0.929914232343435, 
1.41477890312672, 1.41652730805799), x160 = c(1.19612871715799, 
0.801679770927876, 0.39746836386621), x170 = c(1.88860023999587, 
1.03295020200312, 0.729622524231672), x180 = c(0.926427994389087, 
1.20304362708703, 1.57529754098505)), row.names = c(NA, -3L), 
class = "data.frame")
我试图使用ggplot(任何其他绘图方法都可以),但在阅读ggplot函数的要求时,我很难理解是否应该创建一个值向量,用作aes参数y

提前感谢,


F

要获得打印所需的布局,需要使用pivot_将data.frame转换为长格式。从那里你可以正常使用ggplot。要取消堆叠栏,请使用position=dodge

库(tidyverse)
数据%
枢轴长度(cols=包含(“x”),
名称至=“数据点”,
数值_to=“vals”)%>%
ggplot(aes(x=数据点,y=VAL,fill=组1))+
几何坐标(位置=“道奇”)


base-R解决方案是由(v0.3.0)于2020-11-11创建的。base-R解决方案是在绘图之前,使用
重塑
将数据重塑为长格式

dflong <- reshape(df, direction = "long", idvar = "Group.1", timevar = "xval", 
                  varying = 2:10, v.names = "yval", times = colnames(df)[2:10])

library(ggplot2)
ggplot(data = dflong, aes(x = xval, y = yval, color = Group.1)) +
  geom_line(aes(group = Group.1))

dflong非常感谢Jeffrey,感谢你的快速反应,感谢你花时间策划这部电影。谢谢Andreas,这就是答案。“很明显,对于这类活动,重新塑造数据框架是一条路要走,”他指出。